Inserte d'un Moteur de recherche pour le script du tuto #4 créer_un_forum

Beaudelaire

Beaudelaire Le 16 juillet 2020 à 00:28

Salut à tous !

J'aimerais vous demander une aide qui m'est urgente.

En fait, j'ai suivi le tuto de PrimFX sur la création de forum (le Tuto #4) et j'ai fait exactement comme il l'a fait c'est-à-dire le code de la page forum_topic.php qui affiche les topics. Maintenant mon soucis est que j'ai du mal à insérer le code PHP du formulaire de recherche et celui de la pagination dans le code de la page forum_topic.php. C'est pour permettre aux utilisateurs de faire des recherches de topics et d'avoir plusieurs pages comme l'a fait PrimFX sur le forum c'est-à-dire avoir la possibilité de faire des recherches librement dans les catégories et sous-catégories.

Un peu comme ceci https://www.primfx.com/forum/programmation/ ; Le visiteur peut faire des recherches dans catégorie PROGRAMMATION comme dans LES SOUS-CATEGORIES affichées en bas, avec le même moteur de recherche.

MERCI DE M'AIDER

Voici mon code:

forum_topic.php (pour le PHP)

<meta charset="utf-8" />
<?php session_start();
include '../include/menunavigation.php';
include 'includes/database.php';
include 'php/functions.php' ;
global $db;

// Récupération des topics
// $topics = $db->query('SELECT * FROM f_topics ORDER BY id DESC');

if(isset($_GET['categorie']) AND !empty($_GET['categorie']))
{
  $get_categorie = htmlspecialchars($_GET['categorie']);

  $categories = array();
  $req_categories = $db->query('SELECT * FROM f_categories');

  while ($c = $req_categories->fetch()) {
    array_push($categories, array($c['id'], url_custom_encode($c['nom'])));
  }

  var_dump($categories);

  if (in_array($get_categorie, $categories)) {
    var_dump("OK");
  }

  // $id_categorie = 

  if(isset($_GET['souscategorie']) AND !empty($_GET['souscategorie']))
  {
    $get_souscategorie = htmlspecialchars($_GET['souscategorie']);
    $id_souscat = $db->prepare('SELECT id FROM f_souscategories WHERE nom = ?');
    $id_souscat->execute(array($get_souscategorie));
  }

  $req = "SELECT * FROM f_topics 
      LEFT JOIN f_topics_categories ON f_topics.id = f_topics_categories.id_topic 
      LEFT JOIN f_categories ON f_topics_categories.id_categorie = f_categories.id 
      LEFT JOIN f_souscategories ON f_topics_categories.id_souscategorie = f_souscategories.id 
      WHERE f_categories.id = ?";

  if($get_souscategorie)
  {
    $req .= " AND f_souscategories.id = ?";
    $exec_array = array($id_categorie,$id_souscategorie);
  }
  else
  {
    $exec_array = array($id_categorie);
  }

  $topics = $db->prepare($req);

  $topics->execute($exec_array);
}
else
{
  ?>
  <head>
  <link rel="stylesheet" href="../include/menunavigation.css" />
  </head>
  <?php
  die('Erreur: Aucune catégorie sélectionné !');
}

require('views/forum_topic.view.php');
?>

forum_topic.view.php (pour l'HTML)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<link rel="stylesheet" href="css/forum_topic.view.css" />
<link rel="stylesheet" href="../include/menunavigation.css" />
<title>Titre</title>
</head>
<body>
<form method="GET" action=" ">
    <input type="search" name="q" placeholder="Recherche">
    <input type="submit" value="Recherche">
</form>
</body>
</html>
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte