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

Langage PHP Discussion :

execution de requete avec mysql_query() échouée


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    5
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut execution de requete avec mysql_query() échouée
    j'essaie d'executer deux requetes UPDATE et INSERT en meme temps vers ma bd mysql via la fonction mysql_query(), mais je reçois l'erreur:

    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 'INSERT INTO recu (id,num_recu,cin,nom,prenom,date_recu,mode_paiem,paye_par,objet' at line 1

    Or si j'execute la requete directement depuis mon editeur de requetes mysql ça marche sans problème.

    voici mon code php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $requete1 = "UPDATE cheque SET date_remplace='".$date_sys."', etat_chq = '".$_POST['options_message']."' WHERE num_chq='".$num_chq."'; ";
    $requete2 = "INSERT INTO recu (id,num_recu,cin,nom,prenom,date_recu,mode_paiem,paye_par,objet,montant,num_chq,compte_compta,num_client,etat,user,num_recu_init) VALUES ('$nv_id','$nv_num_recu','$cin','$prenom','$nom','$date_recu','$mode_paiem','$paye_par','$objet','$montant','$nv_num_chq','-','$num_client','nnvalide','$user','$num_recu'); ";
     
    $requete = $requete1 . $requete2 . $requete3 ;
    $resultat = mysql_query($requete) or die(mysql_error());
    merci pour votre aide les amis.

    easyPHP 3.0
    PHP 5.2.8
    mySQL 5.5.9

  2. #2
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Points : 15 059
    Points
    15 059
    Par défaut
    Bonsoir et Bienvenue sur Developpez .

    1- Il ne faut pas mettre un ";" dans une requête à exécuter dans mysql_query().
    2- Il faut lancer les requêtes une par une.
    3- $requete3 existe?

    A+.

  3. #3
    Candidat au Club
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    5
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    j'ai trouvé la solution,
    il fallait séparer les deux requetes et appeller mysql_query pour chacune des deux genre:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $resultat = mysql_query($requete1) or die(mysql_error()) ;
    $resultat = mysql_query($requete2) or die(mysql_error()) ;

  4. #4
    Candidat au Club
    Développeur Web
    Inscrit en
    Avril 2010
    Messages
    5
    Détails du profil
    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Avril 2010
    Messages : 5
    Points : 4
    Points
    4
    Par défaut
    Citation Envoyé par andry.aime Voir le message
    Bonsoir et Bienvenue sur Developpez .

    1- Il ne faut pas mettre un ";" dans une requête à exécuter dans mysql_query().
    2- Il faut lancer les requêtes une par une.
    3- $requete3 existe?

    A+.
    oops g pas raffraichi la page avant de poster ma réponse.
    oui $requete3 existe dans un test que g pas mentionné.
    Merci pour les conseils.

  5. #5
    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 727
    Points
    10 727
    Par défaut
    il ne faut pas utiliser or die pour gérer les erreurs mysql, il faut activer le trace mode
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ini_set('mysql.trace_mode', true);

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

Discussions similaires

  1. Executer une requete avec opérateur logique
    Par lg022 dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 13/05/2008, 16h16
  2. excel+mysql : executé des requetes avec des paramètres
    Par overider dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 18/09/2007, 21h03
  3. executer une requete avec le contenu d'une variable
    Par giloo(94) dans le forum Requêtes et SQL.
    Réponses: 3
    Dernier message: 03/02/2007, 01h58
  4. Executer une requete avec parametre passe variables
    Par vincent. dans le forum Requêtes et SQL.
    Réponses: 14
    Dernier message: 18/07/2006, 09h18
  5. Pb d'execution de requete avec un script php
    Par ythierrin dans le forum Requêtes
    Réponses: 3
    Dernier message: 22/08/2003, 14h34

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