检查值是否在mysql表列中

时间:2011-08-12 05:26:32

标签: php mysql

如何检查值是否在mysql表的列中?

现在我正在创建一个登录系统。用户注册我的php文件后发布值并将其变为变量。我想知道我可以用什么代码将我的值与表中的值进行比较,并检查是否存在与输入值相同的值。

我试过这段代码。

$query = "SELECT * FROM users WHERE username ='$username';";

$res = mysql_num_rows(mysql_query($query));

然后if ($res >= 0);

然后我收到了这个错误,

  

警告:mysql_num_rows():提供的参数不是第23行/home/synameg1/public_html/giveaway/appfiles/register.php中的有效MySQL结果资源

所以我想知道是否有办法解决这个错误,或者做我想做的另一种方法。

谢谢!

2 个答案:

答案 0 :(得分:3)

$sql = "SELECT * FROM users WHERE username = '" . mysql_real_escape_string($username) . "'";
$result = mysql_query($sql) or die("Error occurred in [$sql]: " . mysql_error());
$count = mysql_num_rows($result);

答案 1 :(得分:3)

丹:我用'零'结果来表达你的方法。

<?php
//////////////////////////////////////////////////////////////////////
global $current_user;
get_currentuserinfo();
$user_nam = $current_user->user_login;
$db_host = 'localhost';
$db_user = 'Private'; ////the user name
$db_pwd = 'Private';  /////the pasword

$database = 'Datapase name';/////////
$table = 'Table Name'; ///table name

$sql = "SELECT * FROM $table WHERE 'Submitted Login' = '" . mysql_real_escape_string($user_nam) . "'";
$result = mysql_query($sql) or die("Error occurred in [$sql]: " . mysql_error());
$count = mysql_num_rows($result);

echo $user_nam . "<br />";
echo "count is $count";

////////////////////////////////////////////////////////////////////
?>

私人字段有评论。 它工作,我可以看到$ user_nam但计数为零。 这是一个日期库,因此您可以看到值。 http://you-get-real.com/images/database-peek.png

由于