Page 1 sur 1

pb affichage variable

Posté : 25 avr. 2006, 10:12
par kikirun
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 :)

Posté : 25 avr. 2006, 10:21
par Ryle
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 :)

Posté : 27 avr. 2006, 07:57
par kikirun
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 />";

Posté : 27 avr. 2006, 08:03
par Tictac
c'est exactement ce que Ryle te donnais comme solution !! lol