Erreur sur exécution requête sql dans script php

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 sur exécution requête sql dans script php

Re: Erreur sur exécution requête sql dans script php

par stealth35 » 05 mai 2010, 10:18

ouai faut des quotes aussi dans ta requete SQL

Erreur sur exécution requête sql dans script php

par axelle_david_quentin » 05 mai 2010, 09:22

Bonjour
Je travaille sur une application en php où dans la partie admin j'ai un formulaire qui ajoute des revues dans une table revue, un script qui les suppriment et un autre pour les modifier. C4est sur ce dernier que j'ai un problème. voila le script.

Code : Tout sélectionner

<?php // Connexion au serveur include('../includes/connexion.php'); mysql_connect($host, $user,$passwd) or die("erreur de connexion au serveur"); mysql_select_db($bdd) or die("erreur de connexion a la base de donnees"); if (!empty($_POST)) { extract($_POST); $sql="UPDATE revues SET libelle = '$libelle', prix = '$prix' WHERE references=$references"; require 'includes/requeter.php'; $_GET["references"]=$references; header('Location: index.php'); } $sql="SELECT * FROM revues WHERE references={$_GET["references"]}"; $requete = mysql_query($sql) or die(mysql_error()) ; // envoie une requête au serveur MySQL $donnees = mysql_fetch_assoc($requete); // mysql_fetch_assoc() retourne un tableau associatif qui contient la ligne lue dans le résultat mysql_fetch_assoc() retourne un tableau associatif qui contient la ligne lue dans le résultat result et déplace le pointeur interne de données. et déplace le pointeur interne de données. ?> <form action="actions/produits_modifier.php" method="POST" > <fieldset> <legend>Saisie des caractéristiques des revues</legend><br> <label>Nom:</label> <input name="libelle" value="<?php echo $donnees["libelle"]; ?>" size="60" maxlength="255" class="input"><br> <label>Prix:</label> <input name="prix" value="<?php echo $donnees["prix"]; ?>" size="10" maxlength="10" class="input"><br> <div class="submit"> <input value="Envoyer" class="button" name="envoie" type="submit"> </div> </fieldset> </form>
Ce script me renvoie l'erreur suivante : "Erreur de syntaxe près de 'references=30' à la ligne 3"
Donc la valeur (30)de la variable references est bien transmise par la méthode GET et l'erreur semble venir de la requête en sql :

Code : Tout sélectionner

SELECT * FROM revues WHERE references={$_GET["references"]}
Dans ma base de données mysql la table revues a bien la structure suivante: references, libelle, prix
Merci pour votre aide