2009-11-01 150 views
0

我試圖使它停止顯示其餘的如果$ walk_jail不爲空PHP循環MySQL的幫助

1)$ walk_jail是空

2)$ walk_jail是空

3)$ walk_jail是空

4)$ walk_jail是不顯示其餘空

停止。

$walk = 15; 

for ($counter = 1; $counter <= $walk; $counter += 1) { 

$result= mysql_query("SELECT * FROM walk_txt") or die (mysql_error()); 
$walk_numrows = mysql_num_rows($result); 
$random_walk = rand(1,$walk_numrows); 

$getfl = mysql_query("SELECT * FROM walk_txt WHERE id='$random_walk'"); 
$showfinfo = mysql_fetch_array($getfl); 

$walk_txt = $showfinfo['txt']; 
$walk_jail = $showfinfo['jail']; 
$walk_hp = $showfinfo['hp']; 
$walk_money = $showfinfo['money']; 
$walk_item = $showfinfo['itemid']; 

if($walk_jail){ 
echo "$counter) <span class='bad'>$walk_txt</span><br>"; 
}elseif($walk_money){ 
echo "$counter) <span class='win'>$walk_txt</span><br>"; 
}elseif($walk_item){ 
echo "$counter) <span class='win'>$walk_txt</span><br>"; 
}elseif($walk_money == 0 && $walk_jail == 0 && $walk_hp == 0){ 
echo "$counter) $walk_txt<br>"; 
} 

謝謝

回答

1

我猜你找break; statement,這將下降退出循環。

$walk = 15 

for ($counter = 1; $counter <= $walk; $counter += 1) { 

    ....  

    if($walk_jail){ 
    echo "$counter) <span class='bad'>$walk_txt</span><br>"; 
    break; // ** this will drop out of the loop 
    }elseif($walk_money){ 
    echo "$counter) <span class='win'>$walk_txt</span><br>"; 
    }elseif($walk_item){ 
    echo "$counter) <span class='win'>$walk_txt</span><br>"; 
    }elseif($walk_money == 0 && $walk_jail == 0 && $walk_hp == 0){ 
    echo "$counter) $walk_txt<br>"; 
    } 
} 
+0

你也可以使用break 1;等打破循環的各個部分 - 只是一個小技巧:) – 2009-11-01 02:38:21