我必须让这段代码返回相同的结果,但仅限于 userID 是数字的地方(例如 16); 每个设备在此表中都有一个用户 ID 和一个用户名。 这是代码:
<?php
$myQuery= 'SELECT * FROM devicesissued di LEFT JOIN usercred uc ON di.userID = uc.userID WHERE 1 ORDER BY timeStamp DESC';
$result = mysql_query($myQuery) or die($myQuery."<br/><br/>".mysql_error());
while($row = mysql_fetch_array($result))
{
$catQuery = 'SELECT * FROM deviceinventory WHERE deviceID = '. $row['deviceID'];
$catResult = mysql_query($catQuery) or die($catQuery."<br/><br/>".mysql_error());
$cat = mysql_fetch_array($catResult);
echo "<tr>";
echo "<td>" . $row['displayName'] . "</td>";
echo "<td>" . $row['deviceID'] . "</td>";
echo "<td>" . $cat['barCodeID'] . "</td>";
echo "<td>" . $cat['category'] . "</td>";
echo "<td>" . $row['deviceName'] . "</td>";
echo "<td>" . $cat['operatingSystem'] . "</td>";
echo "<td>" . $cat['serialNumber'] . "</td>";
echo "<td>" . $cat['macAddress'] . "</td>";
echo "<td>" . $row['timeStamp'] . "</td>";
echo "</tr>";
}
?>
如果我添加 WHERE 'userID' = A-Number
子句,它不会执行任何操作。
如果您有任何想法,我很乐意尝试。
谢谢。
最佳答案
试着稍微改变一下你的查询
$myQuery= 'SELECT * FROM devicesissued di
LEFT JOIN usercred uc ON di.userID = uc.userID
WHERE di.userID=the_number_here ORDER BY timeStamp DESC';
由于您在两个连接表(deviceissued
和 usercred
)中都有用户 ID,因此您必须告诉 MySQL 您要在哪个表上执行 WHERE
-子句。
关于PHP & MySQL , 获取表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41000682/