erreur

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : erreur

par fab » 07 janv. 2009, 15:14

if(!mysql_query($req))
 echo mysql_errno() . ": " . mysql_error() . "\n";

par Invité » 07 janv. 2009, 10:37

oui j'ai essayé comme ça aussi, idem. merci

par dunbar » 07 janv. 2009, 10:34

Il y a une erreur de syntaxe et il manque une ,
$req = 'UPDATE contact   
              SET type="'.$type.'",  
              code_ville='.$code_ville.'  
              tel="'.$tel.'",  
              nom="'.$nom.'",  
              commentaire="'.$commentaire.'"  
            WHERE num = '.$num.';  
mysql_query($req); 
Proposition de correction :
$req = 'UPDATE contact   
              SET type="'.$type.'",  
              code_ville="'.$code_ville.'" , 
              tel="'.$tel.'",  
              nom="'.$nom.'",  
              commentaire="'.$commentaire.'"  
            WHERE num = "'.$num.'"';  
mysql_query($req);

par Invité » 07 janv. 2009, 10:30

donc j'ai repris cette requete
$req = 'UPDATE contact  
              SET type="'.$type.'", 
              code_ville='.$code_ville.' 
              tel="'.$tel.'", 
              nom="'.$nom.'", 
              commentaire="'.$commentaire.'" 
            WHERE num = '.$num.'; 
mysql_query($req);
et même probleme qu'avec la mienne, avec echo cela fonctionne sinon non, mais bien sur aucun message d'erreur !!! la je comprend vraiment rien

par fab » 06 janv. 2009, 20:31

Si on utilise la concaténation autant le faire bien :


- Une chaine entre " " sera interprétée par PHP ce qui consomme donc un peu plus de ressources
exemple:
$name  = 'fab';
$phrase = "Mon nom est $name";
echo $phrase; // retourne Mon nom est fab
- Une chaine entre ' ' ne sera pas interprétée par PHP
exemple;
$name  = 'fab';
$phrase = 'Mon nom est $name';
echo $phrase; // retourne Mon nom est $name

Donc pour faire une requete propre :
$req = 'UPDATE contact 
              SET type="'.$type.'",
              code_ville='.$code_ville.'
              tel="'.$tel.'",
              nom="'.$nom.'",
              commentaire="'.$commentaire.'"
            WHERE num = '.$num.';
mysql_query($req);
J'ai supposé que $code_ville et $num sont de type int sinon mysql nécessite des " " autour de ces variables

par animithra » 06 janv. 2009, 18:42

Bonsoir,
Peut-etre que la structure de la table SQL et un exemple de requete qui plante pourrait nous aider :oops:
Il vient de le dire : le copier/coller de la requête fonctionne de manière directe, ici la structure de BDD ne sert donc pas.

Le problème vient plutôt de la rédaction de la requête en php.

est ce que ça ne fonctionnerait pas mieux ainsi :

Code : Tout sélectionner

mysql_query("update contact set type='".$type."', code_ville='".$code_ville."', tel='".$tel."', fax='".$fax."', nom='".$nom."', nom='".$nom."', commentaire='".$commentaire."' where num= '".$num."'");
Si tu ne concatènes pas tes variables, cela ne fonctionne pas en général, l'ajout des ". pallie le problème :)

autre chose : tu as deux fois le champs "nom" !

par Vurtu » 06 janv. 2009, 18:09

Bonjour,

Peut-etre que la structure de la table SQL et un exemple de requete qui plante pourrait nous aider :oops:

erreur

par Invité » 06 janv. 2009, 18:06

Bonjour,

voila j'ai un souci j'ai une requete qui fonctionne très bien lorsque je met un echo devant et que je fais ensuite un copier coller sur phpmyadmin, mais lorsque je remplace le echo par mysql_query elle ne fonctionne pas. je n'ai vraiement aucune idée d'ou cela peux venir. J'ai deja de nombreuses pages et toutes fonctionne, alors qu'elles sont sur le même principe. ça doit être tellement bête, que je trouve pas.
ma requete :
mysql_query("update contact set type='$type',
code_ville='$code_ville',
tel='$tel',
fax='$fax',
nom='$nom',
nom='$nom',
commentaire='$commentaire' 
where num= '$num'");
merci