选择查询无效

Waa*_*aat 0 php mysql

我有一个select查询,我想检查一下,如果我的数据库表中的sensorValue数不在max和min之间,并且状态等于0,则回显一条消息.

我做了一些不能完全按照我的意愿工作的东西.代码如下

//ALERT SYSTEM
     $query2 = mysql_query("SELECT username, typeValue, datetime FROM sensors WHERE sensorValue < min OR sensorValue > max AND status='0'");
     while($row = mysql_fetch_array($query2))
     {
        if($username==$row['username'])
        {
            $alert_message= " <b><font color=red><p align='center'>You Have Health Problem with Your ".$row['typeValue']." at ".$row['datetime']."</font></b>";
            $link_address = "viewsensordata.php?view=".$row['username'];
            ?>
            <a href="<?php echo $link_address;?>"> <?php echo $alert_message; ?> </a>
            <?php

        }
     }
Run Code Online (Sandbox Code Playgroud)

代码有什么问题,如果状态为1,它仍然会回显消息

Rau*_*una 6

我担心你必须加上一个括号:

SELECT username, typeValue, 
datetime FROM sensors 
WHERE (sensorValue < min OR sensorValue > max) 
AND status='0'
Run Code Online (Sandbox Code Playgroud)

这里的"问题"是"和"和"或"具有优先权,如果我没有错,你一直在做的是"sensorValue <min或(sensorvalue> and status ='0')"

  • 我相信min和max只是他的例子的占位符. (2认同)