Php 如何检查数据库中是否存在ID
如果表中不存在ID,为什么不将用户发送到user.phpPhp 如何检查数据库中是否存在ID,php,mysql,get,Php,Mysql,Get,如果表中不存在ID,为什么不将用户发送到user.php <?php include 'db_connect.php'; $id_exists = false; $url_id = mysql_real_escape_string($_GET['id']); $sql = "SELECT id FROM members WHERE id='$url_id'"; $result = mysql_query($sql); if ($result == $url_id)
<?php
include 'db_connect.php';
$id_exists = false;
$url_id = mysql_real_escape_string($_GET['id']);
$sql = "SELECT id FROM members WHERE id='$url_id'";
$result = mysql_query($sql);
if ($result == $url_id)
{
$id_exists = true;
}
else if ($result != $url_id)
{
$id_exists = false;
header("location:user.php");
exit();
}
?>
请阅读相关文档。您必须在进行查询后获取结果。也就是说,您可能应该使用而不是mysql.*
,因为mysql\u查询不返回行,而是返回资源
使用mysql\u num\u rows($result)
检查是否返回了一行
$url_id = mysql_real_escape_string($_GET['id']);
$sql = "SELECT id FROM members WHERE id='$url_id'";
$result = mysql_query($sql);
if(mysql_num_rows($result) >0){
//found
}else{
//not found
}
试试这样的方法:)。
人们通常会使用调试来找出答案。另外,请参阅手册,了解返回的值。对于SELECT、SHOW、DESCRIPE、EXPLAIN和其他返回resultset的语句,mysql\U query()在成功时返回资源,或在错误时返回FALSE。@Pramendra:返回零行的查询仍然成功,因此返回的资源将没有行,不假,谢谢!我还将查看num rows函数。