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 :

Problème de récupération des données dans une fonction [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    188
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Bas Rhin (Alsace)

    Informations forums :
    Inscription : Mars 2006
    Messages : 188
    Points : 151
    Points
    151
    Par défaut Problème de récupération des données dans une fonction
    Bonjour,

    j'ai un petit probleme... j'ai une fonction qui execute des requetes et renvoie le mysql_fetch_array.
    A l'affichage tous les resultats sont bien la mais j'ai toujours une erreur mysql a la fin de l'affichage des résultats.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
      function mysqlRequest_Array($msquery) { 
                 $res = mysql_fetch_array($msquery) or die("erreurr:".mysql_error()); 
                  return $res; 
    }
    apres je fais toujours un $query = "...", mysql_query($query) et enfin j'appelle la fonction :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $query = "select * from machin"; 
    $q = mysql_query($query); 
    while ($res = mysqlRequest_Array($q)){
             echo $res['...']; 
    }
    Pour récuperer des catégories par exemple, il me les récupere bien toutes, mais l'affichage s'arrete apres et dans le code html j'ai "erreurr:" à la fin de mon code mais sans aucune erreur mysql ...

    Si quelqu'un connait le probleme, je veux bien son aide

    Merci d'avance

  2. #2
    Membre éprouvé Avatar de FCYPBA
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    745
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2004
    Messages : 745
    Points : 952
    Points
    952
    Par défaut
    Ton erreur provient du fait que dans ta fonction, lorsque le recordset ( $msquery ) ne contient plus de lignes, le or die() est exécuté ce qui provoque l'affichage du message.

    Il faudrait enlever ce or die de façon à ce que la fonction renvoie FALSE et que la boucle se termine

    Sinon, je ne vois pas trop ce que ta fonction peut bien t'apporter car le mysql_fetch_array ne fera une erreur que si la requête n'a rien renvoyé ce que tu peux tester avec un simple mysql_num_rows()

    Généralement, je fais ca
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $requete='select ...';
    $res = mysql_query($requete) or die(....);
    if (mysql_num_rows($res)>0){
    while($tmp = mysql_fetch_array($res)){
     ...
    }
    }

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/10/2007, 15h47
  2. [MySQL] Récupération des données dans une table
    Par doudom dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 25/07/2007, 19h59
  3. [MySQL] problème de récupération des données d'une requête
    Par maniaco_jazz dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 19/02/2007, 12h12
  4. [VB6]problème d'insertion des donneés dans une base d'Access2003
    Par lanbok dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/05/2006, 12h17
  5. Problème de récupérations de données dans une table mysql
    Par Helpine dans le forum SQL Procédural
    Réponses: 3
    Dernier message: 09/03/2006, 19h07

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