Problème de condition

Eléphant du PHP | 440 Messages

21 avr. 2010, 14:29

Bonjour,

je ne m'en sors pas avec une condition basique. Pourrait-on m'aider svp ??
<?php 
    $table = "inscrits"; 
    $sql = "SELECT * FROM " . $table. " where id=".$_GET['id']." order by NOM";
    $res = mysql_query($sql); 
		$nb = mysql_num_rows($res);
    $i = 0; 
	   while ($i < $nb)
	   {
	$viadeo = mysql_result($res, $i, "viadeo"); 
	if $viadeo!=""
{   
    echo '<a href="http://'.$viadeo.'" target="_blank"><img src="../images/viadeo.jpg" border="0" width="60"/></a>';     
}
else 
{
		 $i++; 
    } 
    ?>
Merci. :(
Débutant complet en php/mysql. Merci pour votre aide.

ViPHP
ViPHP | 5462 Messages

21 avr. 2010, 14:35

et les parenthèses ?

Eléphant du PHP | 440 Messages

21 avr. 2010, 14:39

et les parenthèses ?
A ce niveau if ($viadeo!="") ? Ca ne marche pas mieux.
Débutant complet en php/mysql. Merci pour votre aide.

Eléphanteau du PHP | 39 Messages

21 avr. 2010, 14:41

Et l'incrémentation de i aussi non ?
<?php
    $table = "inscrits";
    $sql = "SELECT * FROM " . $table. " where id=".$_GET['id']." order by NOM";
    $res = mysql_query($sql);
    $nb = mysql_num_rows($res);
    $i = 0;
	
    while ($i < $nb)
       {
	  $viadeo = mysql_result($res, $i, "viadeo");
		if ($viadeo!="")
		    {  
		  	echo '<a href="http://'.$viadeo.'" target="_blank"><img src="../images/viadeo.jpg" border="0" width="60"/></a>';    
	 	    }
		$i++;
	}
    ?>
Et attention aussi au { et }

ViPHP
ViPHP | 5462 Messages

21 avr. 2010, 14:44

tu me diras tu t'embête un peu
$table = "inscrits";
$sql = "SELECT * FROM " . $table. " where id=".$_GET['id']." order by NOM";
$res = mysql_query($sql);

while ($data = mysql_fetch_assoc($res))
{
    $viadeo = $data["viadeo"];
    if($viadeo)
    {  
        echo '<a href="http://'.$viadeo.'" target="_blank"><img src="../images/viadeo.jpg" border="0" width="60"/></a>';    
    }
}
voir même faire ta requete avec ta condition
SELECT * FROM " . $table. " WHERE id=".$_GET['id']." AND viadeo != '' ORDER BY nom

Eléphant du PHP | 440 Messages

21 avr. 2010, 14:46

Super merci.

Et pour comprendre, pourquoi pas de else ni de end if ?
Débutant complet en php/mysql. Merci pour votre aide.

ViPHP
ViPHP | 5462 Messages

21 avr. 2010, 14:48

parce que t'as pas besoin de ton $i pour faire tourner ta boucle, en plus c'était pas bon puisque que tu faisais +1 uniquement quand il trouvais pas, ducoup il pouvais tourner indéfiniment si il trouve

Eléphanteau du PHP | 39 Messages

21 avr. 2010, 14:49

voir même faire ta requete avec ta condition
SELECT * FROM " . $table. " WHERE id=".$_GET['id']." AND viadeo != '' ORDER BY nom
Oui, c'est encore même mieux de faire comme ça.

Autant laisser le SGBD faire son boulot. :)

ViPHP
ViPHP | 5462 Messages

21 avr. 2010, 14:50

ouai et d'ailleurs on voix bien que y'a un soucis

pourquoi faire une boucle sachant que y'a potentiellement qu'un seul ID...