无法弄清楚为什么我的SQL查询没有返回结果

时间:2013-06-08 01:54:57

标签: mysql sql

以下是整个代码人员。我正在尝试创建一个简单的用户身份验证系统。 这是整个代码人员。我正在尝试创建一个简单的用户身份验证系统。 这是整个代码人员。我正在尝试创建一个简单的用户身份验证系统。 这是整个代码人员。我正在尝试创建一个简单的用户身份验证系统。

<?php

if (!isset($_POST['username']) OR !isset($_POST['password']) OR empty($_POST['username']) OR empty($_POST['password'])) {

echo "Please login:";

echo '<form method="POST">';

echo 'Username: <input type="text" name="username">';
echo 'Password: <input type="password" name="password"></br>';

echo '<input type="submit" value="Login">';

echo '</form>';

  }

    else {

$username = $_POST['username'];
$password = md5($_POST['password']);

try {

    $pdo = new PDO('mysql:host=localhost;dbname=userauth', 'norman101', 'beecher123');

}

catch(PDOException $e) {

    echo 'ERROR:' . $e->getMessage();
}

$sql = "SELECT * FROM userinfo WHERE username=?, AND password=?";

$pds = $pdo->prepare($sql);

$pds->execute(array($username, $password));

$row = $pds->fetch(PDO::FETCH_ASSOC);

print_r($row);

}

?>

2 个答案:

答案 0 :(得分:2)

我认为你错过了AND运算符:

$sql = "SELECT * FROM userinfo WHERE username=? AND password=?";

答案 1 :(得分:1)

试试这个

$pds= $pdo->prepare("SELECT * FROM userinfo  WHERE username=:username AND password=:password");
$pds->execute(array(':username' => $username, ':password' => $password));
$row = $pds->fetchAll(PDO::FETCH_ASSOC);