Recherche multicrtére dans table my sql
bonjour
j'ai un formulaire de recherche
Code:
1 2 3 4 5 6 7
|
<form action="affichagerecherche.php" method="POST">
<p>entrer un mot clé<INPUT NAME="RECHERCHE" value="" SIZE=50 MAXLENGTH=50></p>
<P><INPUT type=submit value=valider name=ok><INPUT type=reset value=Annuler></P>
</form> |
et une page qui affiche le résultat de la recherche dans plusieurs champs de la table
Code:
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
|
<?php
$RECHERCHE = isset($_POST['RECHERCHE']) ? $_POST['RECHERCHE'] : '';
//3- creation de la requete et excécution de la requete
//**************************************
$query = "SELECT * from Equipements WHERE CONCAT(DEVICE_ID,TOOL_DESCRIPTION) LIKE %$RECHERCHE% ";
$result = mysql_query($query) or die (mysql_error());
$total = mysql_num_rows($result);
// si on a récupéré un résultat on l'affiche.
if($total) {
// debut du tableau
echo '<table bgcolor="#FFFFFF">'."\n";
// première ligne on affiche les titres prénom et surnom dans 2 colonnes
echo '<tr>';
echo '<td bgcolor="#CCFF66"><b><u>N</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>DEVICE_ID</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>TOOL_DESCRIPTION</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>TOOL_AREA</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>TOOL_LOCATION</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>TOOL_SUBLOCATION</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>SERIAL_NUMBER</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>BRAND</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>RECEPTION_DATE</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>BUY_OFF_DATE</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>PROJECT_NUMBER</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>MODEL</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>VOLTAGE</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>AMPERAGE</u></b></td>';
echo '<td bgcolor="#CCFF66"><b><u>POWER</u></b></td>';
echo '</tr>'."\n";
// lecture et affichage des résultats sur 2 colonnes, 1 résultat par ligne.
while($row = mysql_fetch_array($result)) {
echo '<tr>';
echo '<td bgcolor="#FFFFFF">'.$row["N"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["DEVICE_ID"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["TOOL_DESCRIPTION"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["TOOL_AREA"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["TOOL_LOCATION"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["TOOL_SUBLOCATION"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["SERIAL_NUMBER"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["BRAND"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["RECEPTION_DATE"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["BUY_OFF_DATE"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["PROJECT_NUMBER"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["MODEL"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["VOLTAGE"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["AMPERAGE"].'</td>';
echo '<td bgcolor="#FFFFFF">'.$row["POWER"].'</td>';
echo '</tr>'."\n";
}
echo '</table>'."\n";
// fin du tableau.
}
else echo 'Pas d\'enregistrements dans cette table...';
// on libère le résultat
mysql_free_result($result);
?> |
mais quand je fait une recherche par exemple du mot TAL et je valide il m'affiche
Erreur de syntaxe pr�s de '%TAL%' � la ligne 1