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 :

Gestion d'erreur sql [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é Avatar de Shivas
    Inscrit en
    Juin 2004
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 126
    Par défaut Gestion d'erreur sql
    Bonjour,

    J'ai un soucis au niveau de l'affichage d'un formulaire HTML à cause d'une requête sql. Je m'explique j'exécute une requête et j'indique l'instruction die si il n'y a pas de champ correspondant a la recherche, le problème c'est que le script s'arrête lorsque l'erreur est rencontrée et la fin du code n'est pas exécute.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $row = mysql_fetch_array($req) or die ("Pas de resultat");
    Comment dois-je procéder ?

  2. #2
    Membre chevronné Avatar de SphynXz
    Développeur Web
    Inscrit en
    Mars 2008
    Messages
    439
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2008
    Messages : 439
    Par défaut
    c'est tout l'utilité du die
    il n'y à que die qui die ! oui y'a exit aussi :p

    plu serieusement, ne te sert pas de die si tu veux tout de même poursuivre l'éxécution de ton script!

  3. #3
    Membre confirmé Avatar de Shivas
    Inscrit en
    Juin 2004
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 126
    Par défaut
    Ma question en faite c'est y a t-il une autre instruction que die pour gérer les erreurs qui permettrai a mon script de s'exécuter jusqu'à la fin.

  4. #4
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Par défaut
    Le problème c'est que si il y a une erreur capable d'activer de le die, il ya de fortes probabilités pour que cette erreur fasse planter ton script de toute façon...
    Dans le cas contraire, tu peux juste tester la valeur retournée par mysql_query
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    $res =mysql_query($req);
    if (!$res)
    {
     //cas ou mysql_query plante <=> validation du die
    }
    else
    {
     // cas où mysql_query ne plante pas : traitement du résultat...
    }
    Modératrice PHP
    Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)
    Cherchez un peu avant poser votre question : Cours et Tutoriels PHP - FAQ PHP - PDO une soupe et au lit !.

    Affichez votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur) et [C=php][/C]

  5. #5
    Membre confirmé Avatar de Shivas
    Inscrit en
    Juin 2004
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 126
    Par défaut
    Merci pour ta réponse c'est vrai que je n'ai pas pense a mettre une condition. J'ai mis le code suivant pour ceux que ça intéresse :


    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    $req = mysql_query($result) 
     
    $total = mysql_num_rows($req); 
     
        //Si on recupere un resultat on l'affiche
           if ($total){
        //Lecture et afficahge du resultat
           while($row = mysql_fetch_assoc($req)) 
        {
     
    	?> <br> 
    		 <a href = " <?php echo $row['lien'] ?> " target="_self"><?php echo $row["Nom"]?> </a><? 
     
         }
    				}
    	  else echo ("pas de resultat");
     
     
    	  ?>

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

Discussions similaires

  1. [Généralités] purge gestion des erreurs SQL
    Par Atsibat dans le forum WinDev
    Réponses: 6
    Dernier message: 20/02/2013, 19h43
  2. gestion des erreurs SQL
    Par nico84 dans le forum VBA Access
    Réponses: 2
    Dernier message: 07/01/2010, 08h59
  3. Gestion des erreurs SQL
    Par savior dans le forum Langage SQL
    Réponses: 5
    Dernier message: 17/05/2006, 11h35
  4. [J2EE/JSP] Gestion des erreurs avec une base SQL server 2005
    Par critok dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 30/04/2006, 16h57
  5. [PL/SQL 9i]Modulo et gestion d'erreur
    Par tomca dans le forum Oracle
    Réponses: 4
    Dernier message: 29/09/2005, 17h22

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