salut,

est ce que il y a quelqu'un peu me dire ou se trouve le probleme dans cette requete de recherche,
le probleme est que la requette et tou le script fonctionne trés bien lorsque je lui donne un seul mot pour la recherche, mais ne fonctionne pas avec deux mots et plus, il maffiche le message d'erreur suivant:

Erreur de syntaxe près de 'ORWHERE nom_cli LIKE "%( le deuxiemme mot saisie)%" LIMIT 0, 10' à la ligne 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
 
$mots = filtre($cherchecli);
$mots = strtolower($mots);
$mots = trim($mots);
$tab = explode(" " , $mots);
$nbrmots  = count($tab);
 
 
 $maxRows_cherche = 10;
 $pageNum_cherche = 0;
 $startRow_cherche = $pageNum_cherche * $maxRows_cherche;
 
 
$query_cherche = "SELECT mat_cli, nom_cli, prenom_cli, tel_cli, login_cli,secteur_act FROM client ";
 
for($i=0 ; $i<$nbrmots; $i++)
{
	if(strlen($tab[$i]) >= 3){
		$query_cherche.= "WHERE nom_cli LIKE \"%$tab[$i]%\" OR";
		//$query_cherche.= "nom_cli LIKE \"%$tab[$i]%\" OR";
	}
}
$query_cherche = preg_replace('#OR$|AND$#', '', $query_cherche); 
 
 
$query_limit_cherche =sprintf("%s LIMIT %d, %d", $query_cherche, $startRow_cherche, $maxRows_cherche);
 
$cherche = mysql_query($query_limit_cherche, $connexion) or die(mysql_error());
 
 $tout_cherche = mysql_query($query_cherche);
 $totalRows_cherche = mysql_num_rows($tout_cherche);
 
$queryString_cherche = "";
if (!empty($HTTP_SERVER_VARS['QUERY_STRING'])) {
  $params = explode("&", $HTTP_SERVER_VARS['QUERY_STRING']);
  $newParams = array();
  foreach ($params as $param) {
    if (stristr($param, "rechemot") == false &&
		stristr($param, "pageNum_cherche") == false && 
        stristr($param, "totalRows_cherche") == false &&
		stristr($param, "maxRows_cherche") == false){
      array_push($newParams, $param);
    }
  }
  if (count($newParams) != 0) {
    $queryString_cherche = "&" . implode("&", $newParams);
  }
}
$queryString_cherche = sprintf("&totalRows_cherche=%d%s", $totalRows_cherche, $queryString_cherche);
merci d'avance