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 :

ExceptionHandler sur une fonction mysql [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 121
    Par défaut ExceptionHandler sur une fonction mysql
    Bonjour,

    je ne comprend pas, c'est surement trivial, mais dans tous les cas,
    j'ai mon bloc try {}catch() qui entoure bien tout ce qu'il faut.
    L'ennui, c'est que l'appel de mysql_query sur une requete select m'envoie une erreur de requete (jusqu'ici normal), mais l'exception n'est pas catchée.
    Existe-t-il une solution donc pour catcher ce genre d'erreur qui n'est pas, bien entendu, une exception PHP mais SGBD.
    Merci d'avance

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Il faut bien faire la distinction entre erreur et exception en PHP.

    L'extension (obsolète ou presque) mysql n'émet que des erreurs, elle ne lèvera jamais d'exception. PDO, en revanche, permet les deux (comportement "configurable"). Tout bloc try/catch entourant une fonction mysql_* ne servirait donc strictement à rien.

    Par conséquent, si on veut vraiment faire lever une exception si mysql_query échoue (entre autres), c'est à vous de la lever (éventuellement en wrappant la fonction, par une nouvelle fonction ou plutôt une classe) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (!mysql_query('une_requête_fause')) {
        throw new Exception(mysql_error());
    }
    Lire en complément : Exceptions et PHP5.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    121
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2002
    Messages : 121
    Par défaut
    Merci pour cette réponse claire et précise.
    Je n'avais pas pensé à la valeur de retour lors de l'execution

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

Discussions similaires

  1. [SQL] porter une fonction MySql sur PostgreSQL
    Par spilliaert dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 02/06/2006, 20h30
  2. Probleme sur une fonction vérif
    Par PrinceMaster77 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 29/10/2004, 13h25
  3. Probleme de pointeur sur une fonction
    Par nicky78 dans le forum C
    Réponses: 2
    Dernier message: 23/05/2004, 20h26
  4. Erreur sur une fonction avec des paramètres
    Par Elois dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 05/05/2004, 21h00
  5. PerlDoc sur une fonction d'un module
    Par lesouriciergris dans le forum Modules
    Réponses: 2
    Dernier message: 13/03/2003, 20h50

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