AJAX/PHP/MYSQL [Résolu/Fermé]

Signaler
Messages postés
439
Date d'inscription
lundi 5 octobre 2009
Statut
Membre
Dernière intervention
6 février 2015
-
Messages postés
332
Date d'inscription
dimanche 11 janvier 2009
Statut
Membre
Dernière intervention
2 février 2016
-
Bonjour, je fais actuellement un moteur de recherche interne pour mon site. Mon code fonctionne pour une table, mais ce que j'aimerais c'est pouvoir faire des recherches sur plusieurs tables. Comment puis-je le faire?


Merci d'avance.

<?php 

if(!empty($_POST) && !empty($_POST['search'])) 
{ 
  extract($_POST); 
  $search = strip_tags($search); 
   
  try{ 
  $bdd = new PDO('mysql:host=localhost;dbname=mabdd', 'username', 'password') or die(print_r($bdd->errorInfo())); 
  $bdd->exec('SET NAMES utf8'); 
  } 
   
  catch(Exeption $e){ 
  die('Erreur:'.$e->getMessage()); 
  } 
   
  $req = $bdd->query("SELECT champ1_article, champ2_article,champ3_article FROM table_article WHERE champ1_article LIKE '%$search%' OR champ2_article OR champ3_article LIKE '%$search%' ORDER BY id_article"); 
   
  if($req->rowCount()>0) 
  { 
    while($data = $req->fetch(PDO::FETCH_OBJ)) 
    { 
      echo '<h2>'.$data->champ1_article.'</h2>'; 
      echo '<p>'.$data->champ2_article.'</p>'; 
      echo '<hr />'; 
    } 
  } 
  else 
  { 
    echo '<h2>Aucun resultat</h2>'; 
  } 
} 

else 
{ 
  echo '<h2>Aucun resultat</h2>'; 
} 

?>






J'aimerais changer le monde, mais ils ne me donnera pas le code source.

3 réponses

Messages postés
332
Date d'inscription
dimanche 11 janvier 2009
Statut
Membre
Dernière intervention
2 février 2016
52
Bonjour,

Tu peux en effectuant une jointure ente tes tables puis tu insère les nouvelle conditions en utilisant un OR.

Exemple :
SELECT champ1_article, champ2_article,champ3_article FROM table_article, table_categorie WHERE champ5_categorie = champ1_article AND champ1_article LIKE '%$search%' OR champ2_article OR champ3_article LIKE '%$search%' OR champ2_categorie LIKE '%search%'  ORDER BY id_article


J'espère que cela t'aidera.
Cordialement.
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
439
Date d'inscription
lundi 5 octobre 2009
Statut
Membre
Dernière intervention
6 février 2015
9
Je t'envoie un mp si tu veux bien
Messages postés
439
Date d'inscription
lundi 5 octobre 2009
Statut
Membre
Dernière intervention
6 février 2015
9
Ca fonctionne, mais j'aimerais que en tapant une "catégorie" Dans la recherche, j'ai tous les articles correspondant. Désolé je suis tellement dans le code que j'ai un peu de mal.


Cordialement
Messages postés
332
Date d'inscription
dimanche 11 janvier 2009
Statut
Membre
Dernière intervention
2 février 2016
52
Non moi c'est loic ;)

Cool si j'ai pu t'aider et que tu es réussit à résoudre ton problème.

Bonne continuation
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
439
Date d'inscription
lundi 5 octobre 2009
Statut
Membre
Dernière intervention
6 février 2015
9
C'est bon j'ai trouvé, merci luc ;)

SELECT champ1_article, champ2_article,champ3_article FROM table_article, table_categorie WHERE champ5_categorie = champ1_article AND champ1_categorie LIKE '%$search%' OR champ2_article OR champ3_article LIKE '%$search%' OR champ2_categorie LIKE '%search%' ORDER BY id_article--
J'aimerais changer le monde, mais ils ne me donnera pas le code source.