Bonjour à tous !
J'ai créer un moteur de recherche qui permet de rechercher plusieurs catégorie avec plusieurs champs.
Une erreur sqln'arrête pas d'apparaître lors de l'exécution de mon script.
S'il vous plait je demande votre assistance.
Voici l'erreur
Je vous donne l'ensemble de mon code pour vous permettre une meilleure compréhension. Merci beaucoup d'avance.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Erreur SQL !DHEAT You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128 <?php //recherche des résultats dans la base de données$result = mysql_query( 'SELECT prenom if(isset($_GET['recherche'])){ extract($_GET); $req = "SELECT `id`, `idsiteinterne`, `idsiteprovider`, `site_name`, `adresseIP`, `service` FROM cyb_site WHERE 1=1 "; //Le WHERE 1=1 permet de pas s'embeter à savoir si le WHERE a déjà été mis ou pas après dans les différents "if isset..." //Ajout de la recherche sur le idsiteinterne s'il est renseigné if (isset($_POST['idsiteinterne'])) $req = $req & " AND idsiteinterne LIKE '%".htmlentities(trim($_post['idsiteinterne']))."%'"; //Ajout de la recherche sur le idsiteprovider s'il est renseigné if (isset($_POST['idsiteprovider'])) $req = $req & " AND idsiteprovider LIKE '%".htmlentities(trim($_post['idsiteprovider']))."%'"; //Ajout de la recherche sur site_name si elle est renseignée if (isset($_POST['site_name'])) $req = $req & " AND site_name LIKE '%".htmlentities(trim($_post['site_name']))."%' "; if (isset($_POST['adresseIP'])) $req = $req & " AND adresseIP LIKE '%".htmlentities(trim($_post['adresseIP']))."%' "; if (isset($_POST['service'])) $req = $req & " AND service LIKE '%".htmlentities(trim($_post['service']))."%' "; $req = $req & " LIMIT 10"; echo'<h4>Resultat de recherche</h4>'; echo '<table>'; echo '<tr>'; echo '<th class="td_seach_titre">N°</th>'; echo '<th class="td_seach_titre">ID Provider</th>'; echo '<th class="td_seach_titre">ID Interne</th>'; echo '<th class="td_seach_titre">Etat du site</th>'; echo '<th class="td_seach_titre">Nom du site</th>'; echo '<th class="td_seach_titre">Adresse IP</th>'; echo '<th class="td_seach_titre">Service</th>'; echo '</tr>'; echo '</table>'; // affichage d'un message "pas de résultats" //$result = mysql_query($req) echo $result = mysql_query($req) or die('Erreur SQL !'.$req.'<br /><b>'.mysql_error().'</b>'); if (mysql_num_rows($result)==0) { ?> <h3 style="text-align:center; margin:10px 0;">Pas de résultats pour cette recherche</h3> <?php } else { // parcours et affichage des résultats while( $result = mysql_query($result)) { ?> <div class="article-result"> <table> <tr> <td class="id"><?php echo $post->id; ?></td> <td class="td_seach"><a href="accueil.php?view=24&u='.$row['id'].'""><?php echo $post->idsiteinterne; ?></a></td> <td class="td_seach"><?php echo $post->idsiteprovider; ?></td> <td class="td_seach"><?php echo $post->idetatsite; ?></td> <td class="td_seach"><?php echo $post->site_name; ?></td> <td class="td_seach"><?php echo $post->adresseIP; ?></td> <td class="td_seach"><?php echo $post->service; ?></td> </tr></table> </table> </div> <?php } } } ?> <div id="boxManage"> <h4>Rechercher un site</h4> <p>Trouvez un site par son nom, sa date de création, son ID, son statut. </p> <form method="get" action=""> <table width="480" border="0" class="right"> <tr> <td class="recherche_text"><label for="id_interne">ID interne</label></td> <td > <input type="text" name="idsiteinterne" class="recherche" id="id_interne" value="<?php if (isset($_POST['idsiteinterne'])) echo htmlentities(trim($_POST['idsiteinterne'])); ?>"></td> </tr> <tr> <td class="recherche_text"><label for="id_provider" >ID Provider</label></td> <td > <input type="text" name="idsiteprovider" class="recherche" id="id_provider" value="<?php if (isset($_POST['idsiteprovider'])) echo htmlentities(trim($_POST['idsiteprovider'])); ?>"></td> </tr> <tr> <td class="recherche_text"><label for="nom_du_site">Nom du site</label></td> <td > <input type="text" name="site_name" class="recherche" id="nom_du_site" value="<?php if (isset($_POST['site_name'])) echo htmlentities(trim($_POST['site_name'])); ?>"></td> </tr> <tr> <td class="recherche_text"> <label for="adresse_ip">Adresse IP</label></td> <td > <input type="text" name="adresseIP" class="recherche" id="adresse_ip" value="<?php if (isset($_POST['adresseIP'])) echo htmlentities(trim($_POST['adresseIP'])); ?>"></td> </tr> <tr> <td class="recherche_text">Statut</td> <td class="seach_name" > <?php $query = "SELECT * FROM `etat_site`"; $result = mysql_query($query); echo '<SELECT name="idetatsite" class="recherche_select">'; while ($row = mysql_fetch_array($result)) { echo '<OPTION>'.$row['etatsite'].'</OPTION>'; } echo '</SELECT>'; ?> </td> </tr> <tr> <td></td> <td><input type="submit" name="recherche" class="recherche_submit" value="Rechercher" /></td> </tr> </table> </form> </div> <div id="results"></div>
Partager