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 :

Requetes SQL INSERT INTO WHERE [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 68
    Points : 26
    Points
    26
    Par défaut Requetes SQL INSERT INTO WHERE
    Bonjour,
    j'aimerai savoir si on peut écrire une requête SQL d'insertion avec une condition.
    Je m'explique, mon client crée un compte ensuit si il veut il pourra s'inscrire à la newsletter et la un petit formulaire s'affiche lui disant d'enter son email et j'aimerai l'inséré dans ma table membre avec le reste des information de mon client.
    pour faire j'ai utilisé cette requête

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'INSERT INTO memb (newslet) VALUES ("'.mysql_escape_string($_POST['newslet']).'") WHERE  pseudo ="'.$_SESSION['pseudo'].'"';
    j'ai pris la session pour inséré la newsletter la ou ce trouve le pseudo de l'utilisateur

    mais un message d'erreur s'affiche

    Erreur SQL !INSERT INTO memb (newslet) VALUES ("m.a.korteby@gmail.com") WHERE pseudo ="makamine"
    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 pseudo ="makamine"' at line 1

    et la je bloque complètement

  2. #2
    Membre éprouvé Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Points : 915
    Points
    915
    Par défaut
    tu fais un insert d'une ligne qui n'existe pas encore donc le where n'a aucune raison d'être, tu l'utilises sur un update si tu veux mais pas dans un insert qui sert à créer une nouvelle ligne dans ta table...
    donc soit c'est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'INSERT INTO memb (newslet) VALUES ("'.mysql_escape_string($_POST['newslet']).'")';
    mais si c'est dans la même table c'est plutot :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $sql = 'UPDATE memb SET newslet = "'.mysql_escape_string($_POST['newslet']).'" WHERE  pseudo ="'.$_SESSION['pseudo'].'"';
    Développeur informatique contrarié...

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 68
    Points : 26
    Points
    26
    Par défaut
    Merci vorace j'ai essayer avec UPDATE et ça marche, en plus j'ai appris un truc avec les INSERT.
    MERCI

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    je te conseil plus d'utiliser mysql_real_escape_string

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 68
    Points : 26
    Points
    26
    Par défaut
    et quelle est la différence entre les deux ???

  6. #6
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par makamine Voir le message
    et quelle est la différence entre les deux ???
    mysql_escape_string est déprécié et n'utilise pas les paramètres de connexion

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2011
    Messages
    68
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2011
    Messages : 68
    Points : 26
    Points
    26
    Par défaut
    d'accord merci pour l'information.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2010] Requete SQL INSERT INTO .. VALUES
    Par phoon dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 06/07/2012, 10h05
  2. [XL-2010] Erreur sur requete sql insert into
    Par rvtoulon dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 20/09/2011, 18h03
  3. [ACCESS] Bouton Requete SQL INSERT INTO
    Par harry le ravi dans le forum VBA Access
    Réponses: 8
    Dernier message: 28/06/2008, 22h33
  4. Syntaxe requete SQL insert into dans VBA
    Par @rkane dans le forum Requêtes et SQL.
    Réponses: 9
    Dernier message: 12/12/2006, 22h03
  5. [SQL] Erreur lors de INSERT INTO => WHERE
    Par DeFCrew dans le forum Access
    Réponses: 14
    Dernier message: 07/08/2006, 16h26

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