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 :

Fatal error: Uncaught exception 'MySQLExeption' [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Par défaut Fatal error: Uncaught exception 'MySQLExeption'
    Bonjour à tous,

    je réalise un site internet en php. J'ai créé un formulaire pour ajouter des actualités. Lorsque j’exécute la requête insert j'ai un gros message d'erreur du genre :

    Fatal error: Uncaught exception 'MySQLExeption' with message 'Erreur de requête SQL!!!' in C:\wamp\www\la sequence doc\class\class_cnx.php:80 Stack trace: #0 C:\wamp\www\la sequence doc\site\admin\form_actu.php(42): Mysql->RequeteSQL('INSERT INTO art...') #1 {main} thrown in C:\wamp\www\la sequence doc\class\class_cnx.php on line 80

    Voici ma requete sql:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    	 $ReqUpdateActu = $Mysql->RequeteSQL('UPDATE actualites SET titre="'.$_POST['titre'].'",date="'.$_POST['date'].'",idArticles="'.$_POST['idArt'].'" WHERE idActu='.$idActu);
    Quand je fais un echo de ma requete et que je l'execute dans mysql ça fonctionne très bien. Je ne vois pas c'est quoi le problème.

    Merci d'avance pour votre aide.

  2. #2
    Membre expérimenté
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Par défaut
    Normalement, un "uncaught exception" veut dire qu'il faut la clause try...catch, comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    try
    {
    $ReqUpdateActu = $Mysql->RequeteSQL('UPDATE actualites SET titre="'.$_POST['titre'].'",date="'.$_POST['date'].'",idArticles="'.$_POST['idArt'].'" WHERE idActu='.$idActu);
    }
    catch($error)
    {
    echo $error;
    }
    Maintenant, ceci ne résoudra pas ton problème puisqu'une erreur s'est produite. Est-ce que tu as essayé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $ReqUpdateActu = mysql_query('UPDATE actualites SET titre="'.$_POST['titre'].'",date="'.$_POST['date'].'",idArticles="'.$_POST['idArt'].'" WHERE idActu='.$idActu) or die (mysql_error());
    Si ça continue de planter avec ça, il serait intéressant de voir la requête résultante de toute cette concaténation pour voir plus précisément où se trouve l'erreur, donc faire:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    echo 'UPDATE actualites SET titre="'.$_POST['titre'].'",date="'.$_POST['date'].'",idArticles="'.$_POST['idArt'].'" WHERE idActu='.$idActu;
     
    $ReqUpdateActu = $Mysql->RequeteSQL('UPDATE actualites SET titre="'.$_POST['titre'].'",date="'.$_POST['date'].'",idArticles="'.$_POST['idArt'].'" WHERE idActu='.$idActu);
    Et nous envoyer le résultat du "echo" pour qu'on puisse diagnostiquer le tout . Bonne chance.

    Osu

  3. #3
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Par défaut
    J'ai déjà fait un echo de la requête et quand je l'exécute dans mysql ça fait bien l'ajout dans la base de données.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    INSERT INTO articles(corps,chapo) VALUES("dfgfdg","gdfgdfgfd")
    L'exécution des autres requêtes fonctionnent

  4. #4
    Membre expérimenté
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Par défaut
    Cette requête:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO articles(corps,chapo) VALUES("dfgfdg","gdfgdfgfd")
    est une requête INSERT alors que dans le code donné, tu construis une requête UPDATE. J'imagine que ce n'est probablement pas ça le problème, mais la requête que j'aimerais voir c'est la requête UPDATE que tu construits, pas la requête INSERT puisque c'est UPDATE qui plante .

    Osu

  5. #5
    Membre éclairé
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Par défaut
    Non non c'est bien un INSERT qui plante. Je me suis trompé en vous donnant le code tout à l'heure, j'ai mis le UPDATE au lieu du INSERT.
    DSL

  6. #6
    Membre expérimenté
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Par défaut
    Ahhhh je crois que j'ai compris ce qui se passe, c'est que PHP échappe les guillemets de votre chaîne de caractères, donc la requête transmise au serveur est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    INSERT INTO articles(corps,chapo) VALUES(dfgfdg,gdfgdfgfd)
    Pour éviter ce petit désagrément, simplement précéder vos guillemets d'une barre oblique inversée (\) comme ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    INSERT INTO articles(corps,chapo) VALUES(\"dfgfdg\",\"gdfgdfgfd\")
    Et si ça continue de planter, voir le code de la requête INSERT serait d'une grande utilité . Au plaisir

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

Discussions similaires

  1. Fatal error: Uncaught exception 'PDOException'
    Par mina13 dans le forum Zend_Db
    Réponses: 2
    Dernier message: 09/06/2011, 09h24
  2. [MySQL] Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002]
    Par -Fly- dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 11/04/2011, 11h18
  3. Réponses: 3
    Dernier message: 04/04/2011, 17h32
  4. [Smarty] Fatal error: Uncaught exception 'SmartyException'
    Par Invité dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 20/11/2010, 11h24
  5. Réponses: 1
    Dernier message: 16/02/2009, 14h00

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