Requete impossible

Signaler
Messages postés
58
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
7 janvier 2011
-
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
-
Re bonjour

Dans un formulaire d'ajout d'utilisateur , je fait une requete pour afficher des checkbox avec diferents composant offices (outlook, word ....)

ces composant ce trouvent dans ma table logiciel (id, nom, description) et pour ces compansant office je met comme description "composant office" pour les diferenciés des autre logiciels.

j'ai donc une requete (SELECT nom_log FROM logiciel WHERE des_log="Composant Office") qui marche trés bien quand je l'execute dans phpmyadmin , mais lorsque je compte les nb de resultat dans mon code , j'ai l'erreur suivant:

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
Impossible d'exécuter la requête dans la base :
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\OCS Inventory NG\xampp\htdocs\www\user_function.php on line 110
Aucune ligne trouvées pour les composants office.
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\OCS Inventory NG\xampp\htdocs\www\user_function.php on line 113
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

et aucune de mes checkbox ne s'affiche quand je fait un fetch_assoc pour les extraire

Je dirais que sa vien de l'espace qu'il y a entre composant et office, mais c moi le newbie donc je dit surement nimporte quoi!
Donc je fais appel au pro

Merci

6 réponses

Messages postés
214
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
23 juin 2006

salut,
je ne suis pas un pro, mais est-ce que tu peux mettre ton code où tu execute la requete (avec mysql_query()) et celui ou tu récupère le résultat (en gros le bloc de lignes aux alentours de la ligne 110 et 113 je pense). Je pense que ce sera plus facile de cerner le problème ainsi.
Messages postés
58
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
7 janvier 2011

sans problème , et merci de ta reponse rapide

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
$requete_office = 'SELECT nom_log FROM logiciel WHERE des_log="Composant Office"';

$reslutat_office = mysql_query($requete_office) or die('Erreur SQL ! : '.mysql_error());

// et plus loin dans le formulaire:
<td class=formulaire>Composants Offices instalés :</td>
    <?
    if (!$resultat_office) {
      echo "Impossible d'exécuter la requête dans la base : " . mysql_error();
      exit;
     }
     if (mysql_num_rows($result_office) == 0) {
      echo "Aucune ligne trouvées pour les composants office.";
      exit;
     }
    while($data = mysql_fetch_assoc($resultat_office)) {
     echo '<td class=formulaire>' .$data['nom_log']. '</td>';
    }
    ?>

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

Merci
Messages postés
214
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
23 juin 2006

bon alors déja pour le mysql_num_rows il faut mettre entre parenthèses $resultat_office, et non pas $result_office.
par contre pour l'autre ligne, je ne vois pas trop... je vais quand meme continuer de chercher.
@+
Messages postés
214
Date d'inscription
lundi 20 mars 2006
Statut
Membre
Dernière intervention
23 juin 2006

c'est bon j'ai trouvé!
a la ligne ou tu as le mysql_query, tu as une erreur de frappe, tu a $reslutat_office au lieu de $resultat_office. ensuite pour le mysql_num_rows tu fais comme je t'ai dis au dessus et ça devrait aller. Tiens moi au courant. @+
David
Messages postés
58
Date d'inscription
vendredi 7 août 2009
Statut
Membre
Dernière intervention
7 janvier 2011

Ahhhhhhhhh

c'estr bcp mieu

merci bcp de prendre le temp d'aider l'aveugle que je suis...
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
" if (!$resultat_office) {"

<== ca, ca sert à rien étant donné que si ta query retourne FALSE... c'est le OR DIE() qui se charge de l'intercepter !
Voila !