Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1819 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] noob fonction update

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] noob fonction update

n°1786039
marilyan
C'est pas faux
Posté le 12-09-2008 à 12:41:00  profilanswer
 

bonjour,
j'ai un soucis avec la fonction update.
je cherche a remplir des champs vide d'une table en fonction d'un champ justement.
le champ serial est ma reference et je remplit les autres champs a partir de celui ci
 

Code :
  1. if(isset($_POST['serial']))      $serial=$_POST['serial'];
  2. else      $serial="";
  3. if(isset($_POST['daterev1']))      $daterev1=$_POST['daterev1'];
  4. else      $daterev1="";
  5. if(isset($_POST['kit1']))      $kit1=$_POST['kit1'];
  6. else      $kit1="";
  7. if(isset($_POST['compteur1']))      $compteur1=$_POST['compteur1'];
  8. else      $compteur1="";
  9.        // connexion à la base
  10. $db = mysql_connect('localhost','root','') or die('Erreur de connexion '.mysql_error());
  11. // sélection de la base   
  12.     mysql_select_db('xoops',$db)  or die('Erreur de selection '.mysql_error());
  13.    
  14.     // on écrit la requête sql
  15.     $sql = "UPDATE clients_tbl SET $daterev1, $kit1, $compteur1 WHERE serial='$serial'";
  16.    
  17.     // on insère les informations du formulaire dans la table
  18.     mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());
  19.     // on affiche le résultat pour le visiteur
  20.     echo 'le générateur est rentré dans la base';


mais je rencontre une erreur a chaque fois
 
Erreur SQL !UPDATE clients_tbl SET test, test, compteur1 WHERE serial='serial'
Erreur de syntaxe près de ' test, compteur1 WHERE serial='serial'' à la ligne 1
 
alors erreur de syntaxe ou mauvaise methode ?


Message édité par marilyan le 12-09-2008 à 13:11:05

---------------

mood
Publicité
Posté le 12-09-2008 à 12:41:00  profilanswer
 

n°1786043
omega2
Posté le 12-09-2008 à 12:53:38  profilanswer
 

Voir la documentation de mysql

Citation :

UPDATE [LOW_PRIORITY] [IGNORE] tbl_name
    SET col_name1=expr1 [, col_name2=expr2 ...]
    [WHERE where_definition]
    [ORDER BY ...]
    [LIMIT row_count]


"SET col_name1=expr1" Donc soit il te manque les valeurs soit il te manque les noms de colonnes. On ne peut pas mettre l'un sans l'autre.

n°1786052
marilyan
C'est pas faux
Posté le 12-09-2008 à 13:24:10  profilanswer
 

merci bcp !
 

Code :
  1. $sql = "UPDATE clients_tbl SET daterev1='$daterev1', kit1='$kit1', compteur1='$compteur1' WHERE serial='$serial'";


voila le code corrigé


---------------

n°1786055
Marty_McFl​y
Nan hé ho, d'accord?
Posté le 12-09-2008 à 13:29:47  profilanswer
 

NEVER TRUST USER INPUT :p
 
il faut sécuriser les $_POST en utilisant des fonctions telles que mysql_real_escape_string, ce serait cool :p


---------------
arg(z) = pi /2 donc z = i, moi je prends pas

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] noob fonction update

 

Sujets relatifs
Utiliser json_decode() en PHP 4UTF-8 en PHP et MYSQL
[PHP] bug avec internet explorersélectionner la bonne stringtable en fonction de la langue de l'OS
PHP - Portée d'1 variable (array) hors d'1 simple "while"La fonction focusGained()
Statistiques Php/Sql Allégé[HTML/PHP] Test connexion routeur
Plus de sujets relatifs à : [PHP] noob fonction update


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR