2012-07-24 45 views
-1

多变量,这样我有我想要使用设置PHP与MySQL

mysql_select_db("website", $con); 
    $result=mysql_query("SELECT * FROM characters where online='1'"); 
    while ($row= 
       mysql_fetch_array($result)) 
       { 
       echo $row['name']; 
       } 
       if ($row['race'] == "1"); 
       { 
       echo '<img src="img/8-0.gif" />'; 
       } 
       if ($row['class'] == "3"); 
       { 
       echo '<img src="img/3.gif" ?>'; 
       } 
      mysql_close($con); 
     ?> 

现在我只希望这两个图像显示,如果网上的场为一个代码,但他们表现出不管是什么。有谁知道我该如何解决这个问题?谢谢。

+0

说真的,你尝试过什么?你知道MySQL中的数据类型吗?使用'online = 1'而不是'online ='1''。 – fdomig 2012-07-24 11:14:46

+0

如果([在线?])添加echo dpitkevics 2012-07-24 11:14:57

+0

@fdomig虽然这不是我的理由,但如果类型实际上是'VARCHAR',而不是'int',该怎么办?我知道,这完全没有道理,但在这种情况下,不检查文字可能会出错。 – ATaylor 2012-07-24 11:24:48

回答

0
  if ($row['race'] == "1" AND $row['online'] == 1); 
      { 
      echo '<img src="img/8-0.gif" />'; 
      } 
      if ($row['class'] == "3" AND $row['online'] == 1); 
      { 
      echo '<img src="img/3.gif" ?>'; 
      } 
+0

不是我该怎么做,但它应该这样工作。 – ATaylor 2012-07-24 11:23:33

3

对于参数的缘故:

mysql_select_db("website", $con); 
$result=mysql_query("SELECT * FROM characters where online='1'"); 
while ($row= mysql_fetch_array($result)) 
{ 
    echo $row['name']; 
//} This bracket would immediately close your query processing and only display the last images. Or is that the desired behaviour? 
    if($row['isOnline'] == '1') { //Makes sure, that 'isOnline' is set before displaying. 
      if ($row['race'] == "1"); 
      { 
      echo '<img src="img/8-0.gif" />'; 
      } 
      if ($row['class'] == "3"); 
      { 
      echo '<img src="img/3.gif" ?>'; 
      } 
    } 
} //This bracket closes the actual query result handling 
mysql_close($con); 
?>