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

Requêtes MySQL Discussion :

mysql_error


Sujet :

Requêtes MySQL

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 13
    Points : 13
    Points
    13
    Par défaut [Résolu] mysql_error
    Bonjour,
    je voudrais savoir s'il est possible (mais je n'en ai pas l'impression à première vue) de simplifier un script PHP qui exécute des requêtes d'insertion.
    Pour chaque requête, je fais :
    mysql_query("INSERT INTO ...;") or exit(mysql_error());

    J'aurais aimé alléger le code grâce à une fonction de ce style :
    function on_mysql_error() {exit(mysql_error());}

    C'est à dire une fonction qui se déclencherait automatiquement dès qu'il y a une erreur MySQL, (donc sans qu'on ait besoin de l'appeler), ce qui me permettrait d'enlever pour chaque requête le or exit(mysql_error()); et d'avoir simplement mysql_query("INSERT INTO ...;");
    Merci.

  2. #2
    Membre actif
    Inscrit en
    Septembre 2005
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 185
    Points : 220
    Points
    220
    Par défaut
    je ne vois pas d'interet vu ke dans un formulaire il arrive très peut de recourir à trois requete style INSERT INTO.c'est pas une torture que de faire chaque fois appel à un mesge d'erreur.mais bon si tu le veu vraiment tu peux créer une page qui se nommera par exple ERREUR.PHP et à ,chaque foisque t'en aura besoin dans ton script tu fait un include de cette page. ça peut allé???
    la succession d'évènement que nous subissons toute notre vie n'est qu'un phénomène de compensation dont la nature en est l'arbitre.[Inéluctabilité de la nature ] Polace

  3. #3
    Membre éprouvé Avatar de macbook
    Inscrit en
    Février 2006
    Messages
    838
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 838
    Points : 1 009
    Points
    1 009
    Par défaut
    Ou bien tu code une fonction genre :

    <?php
    &#160;&#160;&#160;&#160;
    function&#160;_mysql_query&#160;(&#160;$sql&#160;)
    &#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;if&#160;(&#160;!
    $result&#160;=&#160;mysql_query&#160;(&#160;$sql&#160;)&#160
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;return&#160;
    mysql_error()&#160;.&#160;'<br&#160;/><pre>'&#160;.&#160;$sql&#160;.&#160;'</pre><br&#160;/>In&#160;:&#160;'&#160;.&#160;$_SERVER['HTTP_HOST']&#160;.&#160;$_SERVER['PHP_SELF']&#160;;
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;else
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;{
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;return&#160;
    $result&#160;;
    &#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;}
    &#160;&#160;&#160;&#160;}
    ?>

    Phpsyntaxcolor powered by decabodi
    Puis il te suffit de remplacer tout tes mysql_query par _mysql_query à coup de Ctrl+H...
    Consultant idéaliste.

  4. #4
    Membre habitué
    Avatar de Amnesiak
    Profil pro
    Inscrit en
    Août 2002
    Messages
    137
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : Belgique

    Informations forums :
    Inscription : Août 2002
    Messages : 137
    Points : 151
    Points
    151
    Par défaut
    Pourquoi ne pas créer une petite fonction qui "encapsulerait" les traitements que tu trouves répétitifs ? C'est pas ce qu'il y a de plus propre comme réaction faces aux erreurs MySQL, mais c'est une idée... :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function execute_query($query) {
        mysql_query($query) or exit(mysql_error()); 
    }

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    13
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Merci !

    (En fait c'était pour un fichier de requêtes d'insertion (les données initiales) créé par un script php à partir du contenu de la base.)

    Alors là, c'est vraiment un moment de faiblesse impardonnable de ma part vu que j'ai procédé comme ceci dans des tas d'autres circonstances et là pour je ne sais quelle raison, je me suis en tête de gérer ceci avec un évènement de type onError.

    J'avais même fait comme vous me le proposez pour le script de création de tables.

    Alala.

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

Discussions similaires

  1. [MySQL] or die mysql_error
    Par Ikaly dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 29/09/2011, 16h01
  2. [MySQL] Différence mysql_error/mysql_num_rows(au niveau de l'utilisation)
    Par guipe dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 08/04/2010, 08h02
  3. mysql_error
    Par RICHARD1232 dans le forum Sécurité
    Réponses: 3
    Dernier message: 25/06/2006, 18h25
  4. equivalent " mysql_error() "
    Par deli.b dans le forum Access
    Réponses: 1
    Dernier message: 21/12/2005, 18h35

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