Problèe avec une requête de sélection

Problèe avec une requête de sélection - PHP - Programmation

Marsh Posté le 01-05-2008 à 22:54:18    

Bonsoir,
 
je suis en train de réaliser un script de rédaction de documentation en ligne et, pour une requête de sélection dans la configuration du script, je me heurte à cette erreur :
 
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\Program Files\wamp\www\documentation\admin-config.php on line 16
 
Comme je sais que ça ne vient pas du mysql_fetch_assoc mais bien de la requête, j'ai rajouté un or die(mysql_error()) et j'ai le message suivant :
 
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE documentation_id=1' at line 1
 
En fait mon cas est un peu particulier : pour la config de mon script, pour l'instant, on peut modifier le titre de la doc, sa description et choisir si on veut mentionner le numéro de la version ou pas. J'ai ajouté un champ avec comme clé primaire le numéro de la documentation (au cas où la plateforme serait multi-documentation plus tard). Du coup, ma requête a cette tête :
 

Code :
  1. $requete = mysql_query('SELECT documentation_titre, documentation_desc, documentation_activer_version WHERE documentation_id=1') or exit(mysql_error());


 
D'après le message ça semble venir de la clause WHERE mais si ce n'est pas la bonne manière pour le critère de sélection, que puis-je mettre ?
 
Merci d'avance  ;)


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 01-05-2008 à 22:54:18   

Reply

Marsh Posté le 01-05-2008 à 22:56:46    

ah ouais tiens [:joce]
Effectivement ça marche mieux en revanche, dans l'input ça m'affiche rien :/


Message édité par Tristou le 01-05-2008 à 22:58:13

---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 02-05-2008 à 10:19:25    

Reply

Marsh Posté le 02-05-2008 à 11:48:12    

C'est bon en fait :D
En revanche, pour une requête de mise à jour, ça me donne ce message :
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'documentation, documentation_desc=Version de test du script, documentation_activ' at line 1
 
La requête est la suivante :

Code :
  1. $requete = mysql_query('UPDATE md_config SET documentation_titre='.$titre_doc.', documentation_desc='.$desc_doc.', documentation_activer_version='.$activation_version.' WHERE documentation_id=1') or die(mysql_error());


 
Je ne pense pas avoir oublié quoi que ce soit cette fois mais y'a visiblement une erreur de syntaxe.


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 02-05-2008 à 11:49:26    

Faut encadrer tes chaînes par des quotes.
 
SET documentation_titre=\'' . $titre_doc . '\', ...


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 02-05-2008 à 11:56:24    

Ca marche, merci ;)


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 03-05-2008 à 22:01:59    

Bon, là c'est une requête d'insertion qui m'enquiquine, ça me donne ça : Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Program Files\wamp\www\documentation\verif.php on line 154.
 
Comme conseillée ci-dessus, j'ai essayé à la base d'encadrer mes chaines par des quotes mais c'est peut-être pour ça que ça merde :/
 

Code :
  1. $requete = mysql_query('
  2.         INSERT INTO md_suggestions(suggestion_id, suggestion_titre, suggestion_cat, suggestion_desc, sugestion_date, suggestion_auteur, suggestion_email, suggestion_contact)
  3.         VALUES('', \'' .$titre_suggestion. '\', \'' .$cat_suggestion. '\', \'' .$desc_suggestion. '\', \'' .$date_suggestion. '\', \'' .$auteur_suggestion. '\', \'' .$email_auteur. '\', \'' .$contact_auteur. '\')') or die(mysql_error());


---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 03-05-2008 à 23:28:58    

mysql_query('INSERT... VALUES('', ...) ...);


Message édité par sielfried le 03-05-2008 à 23:29:29

---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 04-05-2008 à 00:05:06    

j'ai pas compris ton message [:petrus75])

Message cité 1 fois
Message édité par Tristou le 04-05-2008 à 00:07:00

---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Marsh Posté le 04-05-2008 à 00:52:39    

Tristou a écrit :

j'ai pas compris ton message [:petrus75])


 
Bah regarde les quotes que j'ai mis en gras. [:petrus75]


---------------
StarCraft Professional Gaming Database | [Ze Topic] Starcraft/BroodWar
Reply

Marsh Posté le 04-05-2008 à 00:52:39   

Reply

Marsh Posté le 04-05-2008 à 01:38:19    

il faut échapper les guillemets dans le VALUE('',...) ?
Parce que j'ai essayé d'échapper le premier et cela pose un problème avec la valeur qui suit, à savoir : \'' .$titre_suggestion. '\'

 

EDIT : ok, j'ai échappé les deux et cela marche ;)


Message édité par Tristou le 04-05-2008 à 01:42:09

---------------
"About your cat Mr. Schrödinger : I have good news and bad news"
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed