Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Shop Recherche
1935 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Problème while, if, else ...

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Problème while, if, else ...

n°1740372
Bok_75
Posté le 02-06-2008 à 15:48:17  profilanswer
 

Bonjour à tous, voila mon soucis, j'ai une page html qui me permet de saisir une adresse IP pour effectuer une recherche dans une base de données, jusque là pas de soucis, du côté du php pas de soucis pour l'exécution de la requête, mais pour un affichage lorsque j'ai plusieurs résultats j'ai un soucis car je n'ai qu'une seule ligne qui s'affiche (avant j'étais en "while" mais j'ai changé pour un "if, else" pour prévenir l'utilisateur d'une mauvaise saisie d'adresse IP.
 
Mon code :  
 

Code :
  1. if($row = mysql_fetch_row($result))
  2. {
  3. $id = $row[0];
  4. $source = $row[1];
  5. $date = $row[2];
  6. $mac = $row[3];
  7. $ip = $row[4];
  8. $epoch = $row[5];
  9. $texte =$row[6];
  10.  
  11. <td>$id</td>\n
  12. <td>$source</td>\n
  13. <td>$date</td>\n
  14. <td>$mac</td>\n
  15. <td>$ip</td>\n
  16. <td>$epoch</td>\n
  17. <td>$texte</td>\n
  18.  
  19. </tr>\n";
  20. }
  21. else
  22. {
  23. echo"<p>Cette adresse IP n'est pas présent dans la table enregistrement. Assurez-vous d'avoir saisi une adresse IP correcte de la forme xxx.xxx.xxx.xxx</p>";
  24. }


 
Comment concilier l'affichage multiple et le message d'erreur en cas de mauvaise saisie ?
 
Merci

mood
Publicité
Posté le 02-06-2008 à 15:48:17  profilanswer
 

n°1740377
art_dupond
je suis neuneu... oui oui !!
Posté le 02-06-2008 à 15:52:36  profilanswer
 

si tu veux afficher plusieurs lignes, il faut bien mettre while ($row = ...)

 

normalement, tu devrais détecter l'erreur avant de vouloir afficher les résultats (avant la connexion à la db même je dirais).

 


sinon, c'est normal d'avoir plusieurs résultats pour une adresse ip ?

Message cité 1 fois
Message édité par art_dupond le 02-06-2008 à 15:53:29

---------------
oui oui
n°1740382
Bok_75
Posté le 02-06-2008 à 15:58:46  profilanswer
 

art_dupond a écrit :

si tu veux afficher plusieurs lignes, il faut bien mettre while ($row = ...)
normalement, tu devrais détecter l'erreur avant de vouloir afficher les résultats (avant la connexion à la db même je dirais).


 
J'étais parti sur l'idée que si il n'y a pas de résultat il y a message d'erreur, s'il y a résultat, même multiple, affichage.  
Je ne vois pas trop ce que ça pourrait donner autrement  :heink:  
 

art_dupond a écrit :


sinon, c'est normal d'avoir plusieurs résultats pour une adresse ip ?


 
Dans le cas présent oui  :jap:  

n°1740388
art_dupond
je suis neuneu... oui oui !!
Posté le 02-06-2008 à 16:14:47  profilanswer
 

ah mais si pas de message, ce n'est plus une erreur de saisie.

 

s'il n'y a pas d'entrée, ton while sera faux et il n'entrera pas dedans.
tu peux tester le nombre de lignes retournées avant de faire le while (mysql_num_rows quelque chose - je sais plus)


Message édité par art_dupond le 02-06-2008 à 16:16:31

---------------
oui oui

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Problème while, if, else ...

 

Sujets relatifs
problème avec la commande cutprobleme allocation structure
problème pour faire une présentation de siteProblème connection basse de données
Problème fonction date à devenir fou[MySql] Problème Where %toto%
Problème avec unicodeNetRef annuaire probleme de catégorie
[Mysql] Problème d'import 
Plus de sujets relatifs à : Problème while, if, else ...


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR