Erreur dans mon code + MySQL

Fermé
hadjir Messages postés 107 Date d'inscription samedi 3 janvier 2009 Statut Membre Dernière intervention 7 janvier 2010 - 24 avril 2009 à 19:43
doctormad Messages postés 430 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 avril 2015 - 25 avril 2009 à 10:24
Bonjour,
j'ai une question :
j'ai un programme qui permet de prendre une chaine de caractére et chercher dans la base de données et sélectionnée tout les "termes" pour de tel sorte que le terme entrée par l'utilisateur t egale au terme qui existe dans la base aprés la selection.

voila mon code :

$champs11 = "offre d'emploi"
$mot=$champs11;
$nbmots=str_word_count($mot);
$tabmots=str_word_count($mot,1);
print "'";
for($i=0;$i<$nbmots;$i++)
{
print $tabmots[$i];
if ($i!=$nbmots-1) print"+";
}
$prms="";
for ($i=0;$i<$nbmots;$i++)
{
if($i==0) $prms="AND (";
$prms=$prms."occure LIKE '%".$tabmots[$i]."%'";
if ($i!=$nbmots-1) $prms=$prms." OR ";
else $prms=$prms.") ";

}

$sqlactv=mysql_query("select occure from stage where terme =".$prms."");
print "<h3> Résultat(s) trouvé(s): ".mysql_num_rows($sqlactv)."</h3>";


mais il s'affiche une erreur dans le code ce qui est en gras :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in e:\easyphp1-8\www\application\indexer_recherche.php on line 163

svp a ce q'il ya qlq peut me répondre.
merci d'avance.
A voir également:

1 réponse

doctormad Messages postés 430 Date d'inscription mercredi 28 novembre 2007 Statut Membre Dernière intervention 2 avril 2015 99
25 avril 2009 à 10:24
Salut,

Un code pour le moins obscur pour un truc tout simple :)

$champ = "offre d'emploi"
$mots = explode(' ',$champ);

$requete = "SELECT occure,terme FROM stage WHERE terme ='".mysq_real_escape_string($champ)."';

if( count($mots) > 1 ){
foreach($mots as $mot){
$requete .= ' OR terme LIKE %'.mysql_real_escape_string($mot).'% ';
}
}
0