requête mysql qui s'exécute pas et donne pas d'erreur!!!

Nouveau WRInaute
Bonjour tout le monde,

je voudrais insérer dans une table 'searchterms' des valeurs récupérer via une autre table et que j'ai stocké dans une variable, mais le problème c'est que la la requête d'insertion ne s'exécute pas et quand je fais or die or die(mysql_error())

Voilà mon code:

$Mot=$_REQUEST["Mot"];
//on enleve les espaces avant et apres la chaine
$mot=trim($Mot);
//on explose la chaine si il y a différent mot clés
$array=explode(' ',$mot);

$query = "SELECT lien FROM search
WHERE keyword LIKE \"%$array[0]%\"
OR titre LIKE \"%$array[0]%\"";


for ($i=1;$i<count($array);$i++){

$query.="OR keyword LIKE \"%$array[$i]%\"
OR titre LIKE \"%$array[$i]%\"";
}

$query.=" limit 1";

$result = mysql_query($query);
$num_rows = mysql_num_rows($result);

$row = mysql_fetch_row($result);

$myLink=$row[0];
/*echo $myLink ;*/
/*echo $num_rows;*/

$nbr_search=1;
$query="INSERT INTO searchterms (id, term, lien_tc, nbsearches) values('','$Mot','$myLink','$nbr_search')" or die(mysql_error());


Si vous avez une idée, merci
 
WRInaute accro
misscasa2009 a dit:
$query="INSERT INTO searchterms (id, term, lien_tc, nbsearches) values('','$Mot','$myLink','$nbr_search')" or die(mysql_error());

Tu as l'impression que ça ressemble à du PHP ça? Relis toi un peu, et lis la doc de php si ça ne te saute pas aux yeux.

Jacques.
 
WRInaute accro
mdrr le code de merde. Le truc qu'on complètement con, un count à chaque tour cfr : for ($i=1;$i<count($array);$i++)

Et beh, continue à faire des copiés collés et à pas savoir ce que tu fais. ;)

Je te conseille le siteduzero.com pour revoir les bases :mrgreen:
 
WRInaute impliqué
vous êtes un peu dure sur ce coup là :-) Le code est aéré, indenté, y a quelques commentaires, les noms des variables ont un sens, bref y a largement moyen de voir pire
 
WRInaute accro
On voit en effet largement pire , et souvent :)
Miss casa, la ligne suivante stocke dans une variable le contenu de la requête que tu tentes de lancer :
Code:
$query="INSERT INTO searchterms (id, term, lien_tc, nbsearches) values('','$Mot','$myLink','$nbr_search')";
le 'or die (...)' n'a donc rien à faire là.
il faut donc que tu lances la commande PHP qui exécute cette requête:
Code:
mysql_query($query) or die(mysql_error());

ce qui donne donc :
Code:
$query="INSERT INTO searchterms (id, term, lien_tc, nbsearches) values('','$Mot','$myLink','$nbr_search')";
mysql_query($query) or die(mysql_error());
 
Discussions similaires
Haut