pb de if dans une boucle

pb de if dans une boucle - PHP - Programmation

Marsh Posté le 10-06-2005 à 14:30:33    

bonjour
je débute en php
je code ceci:
 
while ($val = mysql_fetch_array($result))
{
if($val["AdresseRueC2"] == NULL )
{
echo $val["Civilité"]."&nbsp".$val["Prénoms"]."&nbsp".$val["NomClient"].
"<br>".$val["AdresseRueC1"].
$val["CodePostalC"]."&nbsp".$val["VilleC"].
"<br>".$val["Région"]."&nbsp".$val["Pays"].
"<br>"."<hr>"
;  }
else
{echo $val["Civilité"]."&nbsp".$val["Prénoms"]."&nbsp".$val["NomClient"].
"<br>".$val["AdresseRueC1"].
"<br>".$val["AdresseRueC2"].
"<br>".$val["CodePostalC"]."&nbsp".$val["VilleC"].
"<br>".$val["Région"]."&nbsp".$val["Pays"].
"<br>"."<hr>"
;
}
}
 
et dans les deux cas il m'affiche exactement la même chose.
je pense que ma condition if n'est pas bonne mais je ne vois pas l'erreur.
peut-on venir à mon secours?
 


---------------
merci
Reply

Marsh Posté le 10-06-2005 à 14:30:33   

Reply

Marsh Posté le 10-06-2005 à 14:40:09    

if(empty($val['AdresseRueC2']))
 

Reply

Marsh Posté le 10-06-2005 à 14:40:24    

désolé je suis une buse!
c'était " " et non NULL


---------------
merci
Reply

Marsh Posté le 10-06-2005 à 14:42:35    

non désolé benamoubeach
mais ta solution ne marche pas merci quand même
par contre " " au lieu de NULL marche!


---------------
merci
Reply

Marsh Posté le 10-06-2005 à 14:43:08    

c bidon ""

Reply

Marsh Posté le 10-06-2005 à 14:43:26    

fait un print_r($val)
pcke "" c laid

Reply

Marsh Posté le 10-06-2005 à 14:43:32    

je ne vois pas le probleme mais tu repete presque le meme code 2 fois :
 
 

Code :
  1. while ($val = mysql_fetch_array($result))
  2. {
  3.  
  4.   echo $val["Civilité"] . "&nbsp" . $val["Prénoms"] . "&nbsp" . $val["NomClient"] . "<br>" . $val["AdresseRueC1"];
  5.  
  6.   if($val["AdresseRueC2"] != NULL )
  7.   {
  8.     echo "<br>" . $val["AdresseRueC2"] . "<br>";
  9.   }
  10.  
  11.   echo $val["CodePostalC"] . "&nbsp" . $val["VilleC"] . "<br>" . $val["Région"] . "&nbsp" . $val["Pays"] . "<br>" . "<hr>";
  12.  
  13. }


Message édité par ritzle le 10-06-2005 à 15:04:54
Reply

Marsh Posté le 10-06-2005 à 14:59:31    

désolé Ritzle mais je viens de tester ta solution çà ne marche pas.
 
de même pouvez vous me dire ou est mon erreur
 
if($val["AdresseRueF2"] == " " && $val["BoîtePostaleF"] == " " )


---------------
merci
Reply

Marsh Posté le 10-06-2005 à 15:03:40    

je sais pas si le "î" passe
EDIT:si, ca marche. désolé


Message édité par ritzle le 10-06-2005 à 15:06:13
Reply

Marsh Posté le 10-06-2005 à 15:07:48    

guen16 a écrit :

désolé Ritzle mais je viens de tester ta solution çà ne marche pas.


 
Comment ca, ca marche pas ?
bien sûr, il faut deja avoir résolu ton problème de "if", je n'ai pas proposé de solution pour ca

Reply

Marsh Posté le 10-06-2005 à 15:07:48   

Reply

Marsh Posté le 10-06-2005 à 16:46:24    

Salut,
pour vérifier si une variable existe tu peux utiliser

Code :
  1. <? if(!$var) echo "la variable n'existe pas"; ?>

et pour vérifier si elle contient une chaîne :

Code :
  1. <? if(empty($var)) echo "la variable est vide"; ?>


 
 :hello:


Message édité par Profil supprimé le 10-06-2005 à 16:47:21
Reply

Marsh Posté le 11-06-2005 à 00:55:44    

quand je lui ai proposé empty, jme suis fait engueuler lol

Reply

Marsh Posté le 11-06-2005 à 01:28:24    

la vérité est parfois difficile à admettre ;)

Reply

Marsh Posté le 11-06-2005 à 11:52:45    

J'utilise plutôt :
 
 

Code :
  1. if ($val == false)
  2. {
  3.     echo "C'est vide, il n'y a rien là-dedans !!";
  4. }


 
Mais après, chacun sa façon de coder, c'est comme les goûts et les couleurs :D.

Reply

Marsh Posté le 11-06-2005 à 12:33:56    

Le mieux pour tester si une string est vide :

Code :
  1. if(empty($s) && strlen($s) == 0) {
  2.   // Vide
  3. }

Reply

Marsh Posté le 11-06-2005 à 17:35:22    

j'suis pas d'accord avec toi FlorentG, tu fais deux fois la même vérification, ça ralentit l'exécution et ça encombre le code inutilement.

Reply

Marsh Posté le 11-06-2005 à 17:42:44    

doc de empty :
 
Ce qui suit est considéré comme étant vide :
 
"" (une chaîne vide)
0 (0 en tant qu'entier)
"0" (0 en tant que chaîne de caractères)

Reply

Marsh Posté le 11-06-2005 à 17:46:58    

Et un petit isset ?

Reply

Marsh Posté le 12-06-2005 à 14:44:03    


Erreur, y'a pas 2 fois la même vérification :o

Reply

Sujets relatifs:

Leave a Replay

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