检查多个表中是否存在记录

时间:2014-04-07 05:18:39

标签: php mysql

我这里有html表显示来自数据库的记录。我的一个列是删除,我需要的是如果两个表中都有记录禁用删除按钮。或者,如果table2中不存在记录,则启用删除按钮。有什么帮助吗?

$query1 = $mysqli1->query("select * from code WHERE item LIKE '%$search%' OR item_code LIKE '%$search%' OR cat_code LIKE '%$search%' order by item_code ASC");
$query2 = $mysqli->query("SELECT count(*) FROM app");

while($r = $query1->fetch_assoc()){
echo"<tr>
<td>".$r['item']."</td>
<td>".$r['cat_code']."</td>
<td>".$r['item_code']."</td>";
if($query1 == 0 && $query2 == 0) {
echo "<td><a href='#' id='".$r['id']."' class='del'><img src='../images/del.png' height='10px' width='10px'></a></td>";
} else {
echo "<td><a href='javascript:void(0)'><img src='../images/stop.png' border='0' width='10' height='10' title='Already Add in Purchase Request' style='cursor: not-allowed;'></a></td>";
                        }
echo"</tr>";
            }
echo "</tbody></table>";

1 个答案:

答案 0 :(得分:0)

为什么不与mysqli_num_rows()核对。尝试检查这样的东西

mysqli_num_rows($query3)

而不是

if($query3 == 0 && $query2 == 0) {
............
}

此外,锚标记没有disabled属性。因此,只有在条件满足时才能更好地显示锚标记。 (这里,仅当两个表中都不存在数据时才显示锚标记。)

if(mysqli_num_rows($query1) == 0 && mysqli_num_rows($query2) == 0) {
echo "<td><a href='#' id='".$r['id']."' class='del'><img src='../images/del.png' height='10px' width='10px'></a></td>";
} 

注意:要“禁用”链接,您可以删除其href属性,或添加返回false的点击处理程序。