Php MySQL不会从表中获取数据

Php MySQL不会从表中获取数据,php,mysql,Php,Mysql,MySQL不会从表中获取数据;为什么我的代码不起作用 我试图检查密码是否正确,但由于某种原因它无法获得密码。我还应该注意,这段代码在Windows VPS上工作,但现在我使用的是Ubuntu 14,它不工作了。我试过chmod 777,但也没用。我能做些什么 if(isset($_COOKIE['user'])){ $username = mysql_real_escape_string($_COOKIE['user']); mysql_connect($dbhost, $db

MySQL不会从表中获取数据;为什么我的代码不起作用

我试图检查密码是否正确,但由于某种原因它无法获得密码。我还应该注意,这段代码在Windows VPS上工作,但现在我使用的是Ubuntu 14,它不工作了。我试过chmod 777,但也没用。我能做些什么

if(isset($_COOKIE['user'])){
    $username =  mysql_real_escape_string($_COOKIE['user']);
    mysql_connect($dbhost, $dbuser, $dbpass)or error("Could not connect: ".mysql_error());
    mysql_select_db($dbname) or error(mysql_error());
    $result = mysql_query("SELECT `id`, `username`, `password`, `ranks`, `active` FROM $table WHERE username='$username'") or die (mysql_error()); 
    list($id,$username,$password,$rank,$active) = mysql_fetch_row($result);
    if($_COOKIE['pass'] == $password) {
        $display = "Hello, $username!";
    } else {
        $display = "Invalid Password, attempted post data fail?";
    }
} else {
    $display = "You are not logged in!";
}
尝试:

如果它不起作用,请演示如何在用户表中插入内容。您没有在
PASSWORD
上使用
PASSWORD()
功能吗

如果是,请尝试以下操作:

$pass = $_COOKIE['pass'];
$result = mysql_query("SELECT `id`, `username`, `password`, `ranks`, `active` FROM $table WHERE username='{$username}' and password=PASSWORD('{$pass}')") or die (mysql_error()); 
if($result) {
    list($id,$username,$password,$rank,$active) = mysql_fetch_row($result);
    $display = "Hello, $username!";
} else {
    $display = "You are not logged in!";
}

不要用纯文本存储密码。你的HTML是什么样子的?我猜您需要的是$POST数组中的值,而不是cookie。清除撇号->
mysql\u查询(“从$table中选择id、用户名、密码、等级、活动,其中username='$username')”
Yikes@slaks看起来他把密码存储在一个cookie中以启动。也不要那样做!!!YikesAnd不仅仅依赖于添加斜杠和mysql解释器。使用参数化查询(又名绑定查询)正确地呈现安全查询。将$username卡在里面是危险的,不管你如何试图逃脱它。
$pass = $_COOKIE['pass'];
$result = mysql_query("SELECT `id`, `username`, `password`, `ranks`, `active` FROM $table WHERE username='{$username}' and password=PASSWORD('{$pass}')") or die (mysql_error()); 
if($result) {
    list($id,$username,$password,$rank,$active) = mysql_fetch_row($result);
    $display = "Hello, $username!";
} else {
    $display = "You are not logged in!";
}