Bonjour,
Je vais essayer d'être le plus clair possible, je précise que je ne suis pas développeur mais je cherche à développer un petit moteur de recherche interne qui va chercher sur plusieurs DB des valeurs en fonction d'un mot clé.
J'ai donc :
- 1 DB de type "FAQ"
- 1 DB de type "TICKETS"
Je cherche avec le même champ "Recherche" dans les 2 DB
Le soucis est que dans la table "FAQ" la colonne "Contenu" reprend le contenu de la FAQ mais les images présentes dans ce contenu son "encodées" ce qui fausse le résultat de ma recherche.
Par exemple lorsque je recherche "59" qui devrait me sortir donc tous les Tickets et/ou FAQs portant le numéro 59 ET les tickets/faq ayant "59" dans leurs contenu, la requête me sort TOUTES les FAQs car le terme "59" est dans la partie encodée du <img>
Je voudrais donc exclure "de la recherche" tout ce qu'il y a entre le <img> et le </img> ce qui me permettrait de pouvoir rechercher uniquement dans le contenu "textuel" de la FAQ.
J'espère avoir été clair.
Si vous avez besoin de code voici le code de ma page PHP (avec requête SQL), encore une fois je ne suis pas développeur donc il y a surement énormément d'incohérences dans ce code, mais il fonctionne en dehors de mon soucis expliqué ci-dessus.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 <?php // DECLARATION DB $db = mysql_connect ('XXXXXX', 'XXXXXXXX', 'XXXXXXXXX'); mysql_select_db('XXXXXXXXXX', $db); $lienticket = 'XXXXXXXXXXXXXXXXX'; if (empty($_POST['motcle'])) { // AFFICHAGE SI AUCUNE RECHERCHE } else { // REQUETE SQL $sql = ' SELECT * FROM hprofaqdata WHERE hprofaqdata.active = "yes" AND ( hprofaqdata.thema LIKE \'%'.$_POST['motcle'].'%\' OR hprofaqdata.content LIKE \'%'.$_POST['motcle'].'%\' ) '; // EXECUTION DE LA REQUETE SQL $req = mysql_query($sql) or die('Erreur SQL !<br />'.$sql.'<br />'.mysql_error()); // RECUPERATION DE PLUSIEURS TICKETS while ($data = mysql_fetch_array($req)) { // AFFICHAGE DES RESULTATS echo '<strong>FAQ ID :</strong><a href="#" onclick="window.open(\''.$lienticket.$data['id'].'\')">'.$data['id'].'</a> <br />'; echo '<strong>Titre :</strong> '.$data['thema'].'<br />'; } } // // CLEAN DE LA MEMOIRE DB mysql_free_result ($req); mysql_close (); ?>
Partager