Boucle Php HELP!

Boucle Php HELP! - PHP - Programmation

Marsh Posté le 12-04-2005 à 20:00:40    

je suis obligé de faire une boucle pour chercher dans ma base de donnée, les informations qui m'interesse, mais je veus que lorsque cette boucle ne donne rien elle m'affiche un liens.Parceque si je vais un else dans la boucle while ce liens est affiché plusieur fois normal quoi.Mais il me faut que ce liens soit afficher une seul fois apres que tout les test on été fait.
 
VOILA CE MON CODE VULGARISé
 
[]while ($j = mysql_fetch_array($requete))
if(($y=kelkechose AND $x=kelkechose echo $j['nom_utilisateur'].' '.$j['prenom_utilisateur'];}
elseif(($y<=kelkechose,$y>=kelkechosedotre AND $x=sa)) echo $j['nom_utilisateur'].'&nbsp;'.$j['prenom_utilisateur'];}
 
 
//ET LA JE VOUDRAIS QUE SI C 2 CHOSE ne SONT PAS TRUE QUE CA M'AFFICHE UN LIEN MAIS une fois c'est a dire qu'il ne faut pas que jle mette a l'interieur de la boucle.Comment jpeus faire?????? :(  :sweat:  
 

Reply

Marsh Posté le 12-04-2005 à 20:00:40   

Reply

Marsh Posté le 12-04-2005 à 20:08:24    

Rou la la, tout plein plein d'erreur,  
il faut refaire tout ca
 
il faut des == pour dire que ce soit egal, sinon cela veut dire que la variable $x prend une valeur, ce qui est techniquement impossible.

Reply

Marsh Posté le 12-04-2005 à 20:12:07    

$j = mysql_fetch_array($requete);
 
while ($j)
if ((isset($y)) AND (isset($x))) // si tes variable exite alors
{
echo $j['nom_utilisateur'].'&nbsp;'.$j['prenom_utilisateur'];
}
 .....


Message édité par Badze le 12-04-2005 à 20:13:15
Reply

Marsh Posté le 12-04-2005 à 20:13:47    

lol je le sais bien mais c'est pas sa le probleme que j'ai jve renvoyer si la boucle est false mais je ve pa le mettre dans la boucle sinon sa me fé mon lien plusieur fois normale puisque c'est une boucle. tu vois le truc?

Reply

Marsh Posté le 12-04-2005 à 20:17:48    

ba tu fait un  
 
if (empty($variable))
{ton lien}

Reply

Marsh Posté le 12-04-2005 à 20:20:22    

Mais la variable sa peut pas être la boucle.
Donc sa marche pas ;(

Reply

Marsh Posté le 12-04-2005 à 20:28:45    

Quelqu'un aurai une idée alors????

Reply

Marsh Posté le 12-04-2005 à 20:36:36    

VOILA 0 QUOI RESSEMBLE MON CODE SANS LE LIENS
 

Code :
  1. while ($j = mysql_fetch_array($requete))
  2.    {
  3.   //$j['ID];  
  4.      //$j["date"];
  5.  //$j["heure_de_depart"];
  6. // si la date est égale à la date dans la base de donnée et heure du tableau correspond à la l'heure de depart de la reunion ON affiche le nom et prenom(de la base de donnée) de la personne    
  7.   if(($_GET['annee'].'-'.$_GET['mois'].'-'.$_GET['jour'])==$j['date'] AND $heure_jour[2].":00"==$j['heure_de_depart']){echo $j['nom_utilisateur'].'&nbsp;'.$j['prenom_utilisateur'];}
  8. // sinon si l'heure du tableau est comprise entre l'heure_de_départ et l'heure_de_fin dans la base de donnée et que la date est égale à la date dans la base de donnée on affiche le nom et prenom de la personne  
  9.    elseif
  10.    ($heure_jour[2].":00"<=$j['heure_de_fin']
  11.    AND
  12.     $heure_jour[2].":00">=$j['heure_de_depart']
  13.     AND ($_GET['annee'].'-'.$_GET['mois'].'-'.$_GET['jour'])==$j['date']) {echo $j['nom_utilisateur'].'&nbsp;'.$j['prenom_utilisateur'];}
  14.    }
  15. //je voudrai que si tous sa n'est pa verifier sa m'affiche un lien


   

Reply

Marsh Posté le 12-04-2005 à 20:59:26    

while ($j = mysql_fetch_array($requete))
{
if { tout ton code }
elseif {tout le reste du code }
else { ton lien }
}
 
Ca devrai etre bon ca,

Reply

Marsh Posté le 12-04-2005 à 21:28:11    

clarifie ton code !
Ecrit d'abord les chaines que tu utilises dans ton if, indente ton code et saute des lignes ! t'y verras certainement beaucoup plus clair apres :o

Reply

Marsh Posté le 12-04-2005 à 21:28:11   

Reply

Marsh Posté le 12-04-2005 à 23:10:54    

Je ne sais pas si j ai bien capté ton histoire mais a mons avis :
 
Ajoute une variable avant le while (un booleen genre found, a 0 par defaut). Tu met le found a 1 dans le if ou le else dans ton while (comme ca tu sais si la condition a été verifiée au moins une fois au cours du while).
 
En ensuite, apres le while (quand il a fini de tourner), tu fais un test sur ta variable found, si elle est toujours a 0 tu affiche ton lien.
 
C est pas niquel mais ca marche
 
:hello:
 
 
Pour resumer :
 
var found = 0
 
While(){
 
  if(){
       ...
       found = 1;
       }else{
       ...
       found = 1;
    }
 
}
 
if(found == 0){
Affiche ton lien
}
 
...

Reply

Marsh Posté le 12-04-2005 à 23:16:31    

C'est aussi une solution, il y a plusieurs façon de faire, a toi de faire ton choix.

Reply

Marsh Posté le 12-04-2005 à 23:18:14    

Badze a écrit :

while ($j = mysql_fetch_array($requete))
{
if { tout ton code }
elseif {tout le reste du code }
else { ton lien }
}
 
Ca devrai etre bon ca,


 
Si j ai bien compris ce qu il souhaite ton truc ne va pas car son lien sera affiché plusieurs fois (si le if et le else if ne matchent rien)

Reply

Marsh Posté le 12-04-2005 à 23:23:21    

a merde j'avais oublier que il y avait son while donc le lien s'affiche plusieurs fois.
Donc la facon de shurik'n est la meilleur.

Reply

Marsh Posté le 12-04-2005 à 23:25:38    

Badze a écrit :

a merde j'avais oublier que il y avait son while donc le lien s'affiche plusieurs fois.
Donc la facon de shurik'n est la meilleur.


 
 :D  :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed