sql绑定值不发送任何内容

时间:2015-10-16 18:48:06

标签: php pdo

为什么不这样做我几天都在尝试按照这里的答案。

我尝试将密码硬编码到语句中,但是当我使用变量作为密码时,它什么也没有返回。

我也有回声和打印到处查看变量是什么,它们是正确的,因为密码确实返回了pw字符串密码

ListView

1 个答案:

答案 0 :(得分:2)

$ username和$ password超出了您的功能范围。您需要将它们作为参数添加到其中:

function GetPassword($username, $password) {

    $db = getDataBase();
    $stmt = $db->prepare('SELECT username,password FROM userinfo WHERE username = :user AND password = :pass');
    $stmt->bindParam(':user',$username, PDO::PARAM_STR);
    $stmt->bindParam(':pass', $password, PDO::PARAM_STR);
    $stmt->execute();
    $results = $stmt->fetch(PDO::FETCH_ASSOC);
    foreach( $results as $row ){
      print_r( $row );
    }
    return $results;
}

$realpw = GetPassword($username, $password);

参考: http://php.net/manual/en/language.variables.scope.php