我正在尝试从mysql数据库读取结果,确定结果是1还是0,然后将变量设置为green.png或red.png:
$result = mysql_query("select * from ping limit 1") or die(mysql_error());
$row = mysql_fetch_array($result);
$beckton = $row['beckton'];
if ($beckton = '1'){
$beckton_status = "<img src='images/green.png' width='75px' height='75px' />";
}
else if ($beckton = '0'){
$beckton_status = "<img src='images/red.png' width='75px' height='75px' />";
}
在我的表'ping'中有一个名为'beckton'的列,它将是1或0.但是当我加载页面时,所有图像都设置为green.png,当我可以清楚地看到DB有些是0的。
我刚才这样做:echo "<td>Beckton</td><td>" . $beckton_status . "</td>";
答案 0 :(得分:8)
if($beckton == '1')
不
if($beckton = '1')
粗略地看一下,在我看来,你正在设置$ beckton变量,而不是比较它。
答案 1 :(得分:3)
值得一提(虽然@Jason Benson 100%正确),但你的代码中根本没有循环。您编写的代码只返回数据库的第一个结果,仅此而已。如果你的表中有多个条目(我认为你提到过),你可能需要一个while()循环来迭代所有的数据库结果。
答案 2 :(得分:1)
在您的评论中,您写道您只需要最新的结果,在这种情况下,您应该在SQL中使用某种ORDER BY timestamp = latest,以确保始终获得最新结果