PHP:如何检查数据库中的ID是否存在

时间:2011-09-02 17:13:26

标签: 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)
{
        $id_exists = true;
}

else if ($result != $url_id)
{
        $id_exists = false;
        header("location:user.php");
        exit();
}

?> 
提前谢谢!

3 个答案:

答案 0 :(得分:13)

$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
}

尝试这样的东西:)。 http://php.net/manual/en/function.mysql-num-rows.php

答案 1 :(得分:2)

请阅读mysql_query的文档。您必须在进行查询后获取结果。也就是说,您应该使用PDO代替mysql_*

答案 2 :(得分:0)

因为mysql_query没有返回一行,所以它返回一个资源。

使用mysql_num_rows($result)检查是否有行返回。