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 :

Requêtes SQL & debug [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 41
    Points : 36
    Points
    36
    Par défaut Requêtes SQL & debug
    Bonsoir, surement une grossière erreur de ma part masi la je sèche:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function recup_champ_rapporteur($id)
    {
    	include("fonct_bdd_annexe.php");
    		$connexion = mysql_connect(****************);
         					mysql_select_db("******",$connexion) or die("Erreur de connexion");
         					print ($id);	
         					$res1 = mysql_query("SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = $id") or die (mysql_error());
         					print_r ($res1);
    mysql_close();
    }
    Le me donne

    le me donne :
    Alors que ma requête rentrée "à chaud" dans PMA me donne deux lignes de résultats (Ce que je veux cela va sans dire).

    Voyez-vous mon erreur?

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Pour exploiter le résultat du mysql_query il faut utiliser myslq_fetch_object/assoc
    http://www.php.net/mysql-fetch-object
    http://www.php.net/mysql-fetch-assoc
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    116
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 116
    Points : 62
    Points
    62
    Par défaut
    Essaye cela sa devrait fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function recup_champ_rapporteur($id)
    {
    	include("fonct_bdd_annexe.php");
    		$connexion = mysql_connect(****************);
         					mysql_select_db("******",$connexion) or die("Erreur de connexion");
         					print ($id);	
         					$res1 = mysql_query("SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = $id") or die (mysql_error());
         					 while ($row = mysql_fetch_object($res1)){
    		echo $row->idMembre;
        }
    mysql_close();
    }

  4. #4
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 41
    Points : 36
    Points
    36
    Par défaut
    Bonjour. Merci de vos réponses, mais le problème ne vient pas de la gestion de ma requête derrière:


    Je suis approximativement à ma 3000 ème lignes de code dont peut être 50 requêtes SQL de la même forme.
    Exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    function recup_champ_enreg_rapporteur()
    {
    	include("fonct_bdd_annexe.php");
    		$connexion = mysql_connect("*******");
         					mysql_select_db("*******",$connexion) or die("Erreur de connexion");	
         					$query1 = "SELECT `id_dossier_thèse` FROM `thèse` WHERE `statut_thèse` = 2";		
         					$res = mysql_query($query1);
         					while($row = mysql_fetch_row($res))
    Cela fonctionne mais ceci non :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    function recup_champ_rapporteur($id)
    {
    	include("fonct_bdd_annexe.php");
    		$connexion = mysql_connect(****************);
         					mysql_select_db("******",$connexion) or die("Erreur de connexion");
         					print ($id);	
         					$res1 = mysql_query("SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = $id") or die (mysql_error());
    Alors que lorsque je rentre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = 105
    Directement dans PMA ceci fonctionne

  5. #5
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    C'est normal et je t'ai déjà dit pourquoi.
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

  6. #6
    Nouveau membre du Club
    Inscrit en
    Septembre 2010
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Septembre 2010
    Messages : 41
    Points : 36
    Points
    36
    Par défaut
    Citation Envoyé par Séb. Voir le message
    Pour exploiter le résultat du mysql_query il faut utiliser myslq_fetch_object/assoc
    http://www.php.net/mysql-fetch-object
    http://www.php.net/mysql-fetch-assoc
    Tu m'a seulement renvoyer vers un man servant à gérer les résultats de requêtes or ma question n'était pas de savoir comment gérer une requête (ce que je faisait très bien jusqu'à présent par mysql_fetch_row() mais bien pourquoi mon résultat était vide. Merci

    Citation Envoyé par rollergirl Voir le message
    Essaye cela sa devrait fonctionner :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    function recup_champ_rapporteur($id)
    {
    	include("fonct_bdd_annexe.php");
    		$connexion = mysql_connect(****************);
         					mysql_select_db("******",$connexion) or die("Erreur de connexion");
         					print ($id);	
         					$res1 = mysql_query("SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = $id") or die (mysql_error());
         					 while ($row = mysql_fetch_object($res1)){
    		echo $row->idMembre;
        }
    mysql_close();
    }
    Ce code là fonctionne. Je te remercie.

    Bien que je me demande toujours pourquoi l'utilisation de mysql_fetch_row() fonctionne sur mes 49 premières fonctions et pas sur celle ci.

  7. #7
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 098
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 098
    Points : 8 207
    Points
    8 207
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par Iceman Y15 Voir le message
    Tu m'a seulement renvoyer vers un man servant à gérer les résultats de requêtes
    Ce qui est normal quand on me propose la fonction ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    function recup_champ_rapporteur($id)
    {
        include("fonct_bdd_annexe.php");
        $connexion = mysql_connect(****************);
        mysql_select_db("******",$connexion) or die("Erreur de connexion");
        print ($id);	
        $res1 = mysql_query("SELECT `idMembre` FROM `jury` WHERE `jury`.`idThese` = $id") or die (mysql_error());
        print_r ($res1);
        mysql_close();
    }
    or ma question n'était pas de savoir comment gérer une requête (ce que je faisait très bien jusqu'à présent par mysql_fetch_row() mais bien pourquoi mon résultat était vide.
    print_r($res1) ne permet pas de savoir si le résultat est vide ou pas, pour cela on a mysql_num_rows( ) et mysql_fetch_*( )

    Bien que je me demande toujours pourquoi l'utilisation de mysql_fetch_row() fonctionne sur mes 49 premières fonctions et pas sur celle ci.
    Pas vu de script avec mysql_fetch_row( ) pour t'aider sur ce point.

    A+
    Un problème exposé clairement est déjà à moitié résolu
    Keep It Smart and Simple

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

Discussions similaires

  1. [ DB2 ] [ AS400] requête sql
    Par zinaif dans le forum DB2
    Réponses: 6
    Dernier message: 23/08/2008, 19h42
  2. Utilisation de MAX dans une requête SQL
    Par Evil onE dans le forum Langage SQL
    Réponses: 7
    Dernier message: 15/06/2004, 18h38
  3. A propos d'une requête SQL sur plusieurs tables...
    Par ylebihan dans le forum Langage SQL
    Réponses: 2
    Dernier message: 14/09/2003, 16h26
  4. PB requète SQL avec Interbase
    Par missllyss dans le forum InterBase
    Réponses: 2
    Dernier message: 15/07/2003, 11h37
  5. Requête SQL
    Par Leludo dans le forum Langage SQL
    Réponses: 2
    Dernier message: 17/02/2003, 16h44

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