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

Langage PHP Discussion :

comportement anormal mysql_fetch_assoc


Sujet :

Langage PHP

  1. #1
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut comportement anormal mysql_fetch_assoc
    Bonsoir,

    j'ai un warning anormal avec mysql_fetch_assoc. Mon code est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $sql="select `nom` from `inscrit_sortie`";
    echo "sql=".$sql."<br>";
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    while ($ligne=mysql_fetch_assoc($result))
         if ($ligne['nom']==$nom) { echo "Vous &ecirc;tes d&eacute;j&agrave; inscrit<br>";}
    et le warning :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /mnt/163/sda/2/6/laurentschmitt18/essai2/sinscriresortie/action_sinscriresortie.php on line 146
    Ce code m'ayant l'air parfaitement juste, je ne comprends pas...

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155

  3. #3
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Je viens de mettre ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $sql="select `nom` from `inscrit_sortie`";
    echo "sql=".$sql."<br>";
    $sql = stripslashes($sql);
    $result = mysql_query($sql) or die(mysql_error());
    while ($ligne=mysql_fetch_assoc($result)) {
    echo "{$ligne['champ']}<br/>";...
    mais il n'y a aucun affichage...

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    même pas ton erreur ?

    au passage : pourquoi tu fais un stripslashes sur ta requete ?

  5. #5
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Même pas l'erreur ; il y a encore le warning, comme avant.
    Sinon, l'antislash, c'est par habitude : je fais un copier-coller de code ; mais si je l'enlève, àa donne exactement la même chose...

  6. #6
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2009
    Messages : 44
    Points : 51
    Points
    51
    Par défaut
    bonjour,

    erreur relativement bizarre, mais pour éventuellement contourné le problème.
    Tu peux faire de cette manière.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $sql="SELECT nom FROM inscrit_sortie"; 
    echo "sql=".$sql."<br>";
    $result = mysql_query($sql) or die(mysql_error());
    while(($ligne = mysql_fetch_array($result, MYSQL_ASSOC))== true){
         if ($ligne['nom']==$nom) {
          echo "Vous &ecirc;tes d&eacute;j&agrave; inscrit<br>";
         }
    }

  7. #7
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je ne vois pas en quoi cela corrigera le problème ; sa requête ne sera pas exécutée.
    Est-ce que tu as testé ta requête dans phpmyadmin ?

    Tu as vraiment sur qu'elle n'apparait pas dans la page ? Si tu fais une page avec seulement ce traitement tu n'as toujours rien ?

  8. #8
    Membre du Club
    Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2009
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2009
    Messages : 44
    Points : 51
    Points
    51
    Par défaut
    Citation Envoyé par sabotage Voir le message
    Je ne vois pas en quoi cela corrigera le problème ; sa requête ne sera pas exécutée.
    Comment tu justifie que la requête ne sera pas exécuté ?

    pour ma part si la requête ne s'exécute pas, c'est que la colonne de la table a extraire n'existe pas.
    Merci

  9. #9
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    ou que la table n'existe pas, bref c'est un problème a traiter dans la requête et non pas a détecter dans le code PHP.

  10. #10
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Bonsoir,

    oui, je suis sûr que la table existe et que la requête est bonne, car même si phpmadmin ne marche plus chez moi (avant, je l'avais via Wampserver, qui, pour une raison inconnue, ne marche plus non plus), j'ai développé en PHP une interface qui me permet dexécuter des requêtes SQL (MySQL) et d'en lire la réponse si elle existe (et affiche l'erreur s'il y en a une). Pour faire l'essai de l'exécution seule de ces lignes de code, bien que ça ressemble à l'utilisation de mon interface, je ferai l'essai, mais seulement demain, n'ayant pas le temps ce soir.
    J'oubliai : le code de backdown ne supprime pas le warning.

  11. #11
    Expert confirmé
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 470
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 470
    Points : 5 831
    Points
    5 831
    Billets dans le blog
    1
    Par défaut
    Hourra, c'est résolu : en fait, ça venait de la suite : je faisais une deuxième requête avec la même variable ($result), donc forcément mysql_fetch_assoc($result) était largué puisque $result changeait...

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 01/08/2007, 14h15
  2. Generics : comportement anormal ?
    Par ®om dans le forum Langage
    Réponses: 1
    Dernier message: 13/07/2007, 16h18
  3. Comportement anormal de mon code?
    Par PadawanDuDelphi dans le forum Delphi
    Réponses: 3
    Dernier message: 16/01/2007, 13h10
  4. CASE WHEN avec un comportement anormal
    Par damien.sans dans le forum Oracle
    Réponses: 5
    Dernier message: 23/08/2006, 10h03
  5. Comportement anormal de la tabulation sur une DBGrid
    Par fredfred dans le forum Bases de données
    Réponses: 2
    Dernier message: 18/05/2005, 13h23

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