IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

Php et INSERT INTO, avec variables


Sujet :

PHP & Base de données

  1. #21
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 104
    Par défaut
    la requête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    "INSERT INTO ".$_SESSION['ta_users']." (".$_SESSION['ch_id_upload'].",".$_SESSION['ch_usrnumcli'].",".$_SESSION['ch_usrsociete'].",
    ".$_SESSION['ch_usradresse'].",".$_SESSION['ch_usrtel'].",".$_SESSION['ch_usrcp'].",".$_SESSION['ch_localite'].",
    ".$_SESSION['ch_pays'].",".$_SESSION['ch_ntva'].",".$_SESSION['ch_active'].",".$_SESSION['ch_admin'].",".$_SESSION['ch_usrlogin'].",
    ".$_SESSION['ch_usrpass'].") VALUES (".$_POST['cmdidupload'].",".$_POST['cmdnumcli'].",".$_POST['cmdsociete'].",".$_POST['cmdadresse'].",".$_POST['cmdtel'].",
    ".$_POST['cmdcp'].",".$_POST['cmdlocalite'].",".$_POST['cmdpays'].",".$_POST['cmdntva'].",$admin_cmdactive,$admin_cmdadmin,
    ".$_POST['cmdlogin'].",".md5($_POST['cmdpass']).")";
    le résultat :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO users (usr_id_upload,usr_numcli,usr_societe,usr_adresse,usr_tel,usr_cp,usr_localite,usr_pays,usr_ntva,usr_active,usr_admin,usr_login,usr_pass) VALUES (9,j,k,l,m,n,o,p,q,1,0,r,03c7c0ace395d80182db07ae2c30f034)
    la question :

    ça à l'air bon pourtant ça ne passe pas comme ça, et avec cette formule si je réactive la mysql_error ça me donne
    Champ 'j' inconnu dans field list

  2. #22
    Membre chevronné Avatar de dj-julio
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 745
    Par défaut
    tu as certainement oublié les quote

    exemple pour une valeur :
    ".$_SESSION['ch_usrsociete'].",
    DEVIENDRA =>
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ' " .$_SESSION['ch_usrsociete']. " ',

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 104
    Par défaut
    J'avait essayé mais ça ne passait pas non plus mais je veut bien le remettre et te donner alors le résultat de la requête

    Voila ce que ça donne avec les ' comme tu me l'indique :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO users ('usr_id_upload','usr_numcli','usr_societe','usr_adresse','usr_tel','usr_cp','usr_localite','usr_pays','usr_ntva','usr_active','usr_admin','usr_login','usr_pass') VALUES (9,j,k,l,m,n,o,p,q,1,0,r,03c7c0ace395d80182db07ae2c30f034)
    et la mysql_error correspondante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Erreur de syntaxe près de ''usr_id_upload','usr_numcli','usr_societe','usr_adresse','usr_te' à la ligne 1

  4. #24
    Rédacteur

    Avatar de Yogui
    Homme Profil pro
    Directeur technique
    Inscrit en
    Février 2004
    Messages
    13 721
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yonne (Bourgogne)

    Informations professionnelles :
    Activité : Directeur technique

    Informations forums :
    Inscription : Février 2004
    Messages : 13 721
    Par défaut
    Ah, c'est dans le VALUES qu'il y a une erreur de syntaxe, c'est là qu'il faut protéger les valeurs par des guillemets.


    [Edit] Ne protège que les champs non numériques par les guillemets, ça permet de mieux cerner les erreurs (à mon avis).

  5. #25
    Membre confirmé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    104
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2006
    Messages : 104
    Par défaut
    Voila ça marche !! merci à tous pour votre aide

    Pour ceux qui chercheraient comment il fallait faire voici la solution :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    		@mysql_query("INSERT INTO ".$_SESSION['ta_users']." (".$_SESSION['ch_id_upload'].",".$_SESSION['ch_usrnumcli'].",
    ".$_SESSION['ch_usrsociete'].",".$_SESSION['ch_usradresse'].",
    ".$_SESSION['ch_usrtel'].",".$_SESSION['ch_usrcp'].",
    ".$_SESSION['ch_localite'].",".$_SESSION['ch_pays'].",
    ".$_SESSION['ch_ntva'].",".$_SESSION['ch_active'].",
    ".$_SESSION['ch_admin'].",".$_SESSION['ch_usrlogin'].",
    ".$_SESSION['ch_usrpass'].") VALUES ('".$_POST['cmdidupload']."',".$_POST['cmdnumcli'].",
    '".$_POST['cmdsociete']."','".$_POST['cmdadresse']."',
    '".$_POST['cmdtel']."',".$_POST['cmdcp'].",
    '".$_POST['cmdlocalite']."','".$_POST['cmdpays']."',
    '".$_POST['cmdntva']."',$admin_cmdactive,$admin_cmdadmin,
    '".$_POST['cmdlogin']."','".md5($_POST['cmdpass'])."')") or die (mysql_error());
    Alors ici seul les champs cmdcp, cmdnumcli, $admin_cmdactive et $admin_cmdadmin n'ont pas de ' ' car ce sont des champs défini comme entier (numérique) donc je pense qu'il faudra que je fasse un controle sur ces champs (en tout cas les 2 premiers qui sont entrés par l'utilisateur) pour ne pas avoir d'erreur en cas d'entrée de texte dans ces champs.

Discussions similaires

  1. [AC-2010] Query SQL VBA (Insert INTO) avec Conditions en variable (Date)
    Par Deustalos dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 12/03/2015, 21h15
  2. [MySQL] inser into avec variable php
    Par gwendoline-bricout dans le forum PHP & Base de données
    Réponses: 15
    Dernier message: 16/10/2013, 09h47
  3. Réponses: 1
    Dernier message: 07/10/2011, 11h14
  4. Requête INSERT INTO avec des champs et des variables
    Par fips1962 dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 26/05/2009, 17h51
  5. INSERT INTO avec une valeur numéroauto
    Par priest69 dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 08/11/2005, 15h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo