pb affichage variable

Eléphanteau du PHP | 11 Messages

25 avr. 2006, 10:12

Bonjour à tous,
débutant en php, je suis en tain de mettre en place un petit annuaire. Mais je n'arrive pas à faire qq chose : quand l'entreprise, par exemple, ne possède pas de "fax", j'aimerai que fax n'apparaisse pas. en gros qu'il n'y ait pas de print qd la variable est null. truc classique mais j'ai du mal a le faire :(

voici mon code :
<?

$q = "SELECT * FROM fiche WHERE secteur='$secteur' AND id_activite='$activite'";
$r = mysql_query($q);
if (mysql_num_rows($r)!=0) { 
	$row=mysql_fetch_array($r); 

	
	print "<div class=\"ecran\"><strong>$row[commune]</strong> ($row[code_postal])<br />";
	print "<div class=\"ecran\">$row[adresse]";
	print "</p>";
	print "<div class=\"ecran_tit\">GSM : $row[gsm]</div><br />";
    print "<p class=\"ecran\"><strong>t&eacute;l : </strong>$row[tel]<br />";
    print "<div class=\"ecran\"><strong>fax : </strong>$row[fax]<br />";
	
	//SI LA FICHE N'A PAS DE FAX = j'aimerais que l'on ne voit pas fax: autrement dit , comment faire pour dire : quand il n'y pas de données ne pas faire PRINT == pour éviter d'avoir des cases vides ds la fiche, c'est plus propre !!

	print "<div class=\"ecran\"><strong>mail :</strong> <a href=\"mailto:$row[mail]\">$row[mail]</a>";
	

	print "</p>";
	print "<p class=\"ecran\"><strong>Infos : </strong><br />";
	print "<div class=\"ecran\">$row[infos]";
	print "</p>";
} else {
	print "Aucune activité dans cette commune";
}


?>
merci pour votre aide :)

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

25 avr. 2006, 10:21

Les conditions sont représentés par les commandes if/else
if (maConditionEstVrai) {
  // fait ceci
}
else { 
  // fait cela
}
Le else n'est pas obligatoire s'il n'y a pas d'instruction contraire. Dans ton cas, le plus simple est d'afficher la ligne fax si celui-ci n'est pas null (sinon bah on ne fait rien :))

Il te suffit donc dans ta condition de vérifier que ta varibale n'est ni nulle (isSet()), ni vide (!empty()), et si c'est le cas, de l'afficher :)

Eléphanteau du PHP | 11 Messages

27 avr. 2006, 07:57

un camarade m'a trouvé qq ch de plus court :
if ($row[fax]!="") { //Si la valeur de $row[fax] n'est pas vide

      print "<div class=\"ecran\"><strong>fax : </strong>$row[fax]<br />";

Eléphant du PHP | 353 Messages

27 avr. 2006, 08:03

c'est exactement ce que Ryle te donnais comme solution !! lol