【发布时间】:2012-10-02 18:44:44
【问题描述】:
我有一个较早的帖子here 但这些答案都没有奏效。所以这是我的整个课程代码:
<?php
session_start();
class Mysql {
private $conn;
function __construct() {
$this->conn = new PDO('mysql:host=***;dbname=***;charset=UTF-8','***','***') or
die('There was a problem connecting to the database.');
}
function verify_Username_and_Pass($un, $pwd) {
$query = "SELECT Username
FROM Conference
WHERE Username = :un AND Password = :pwd";
$stmt = $this->conn->prepare($query);
$stmt->bindParam(':un', $un);
$stmt->bindParam(':pwd', $pwd);
$stmt->execute();
if ($stmt->rowCount() > 0) {
// User exist
$stmt->bindColumn('First Name', $firstName);
$_SESSION["FirstName"] = $firstName;
die($_SESSION["FirstName"]);
return true;
$stmt->close();
}
else {
// User doesn't exist
//die("failure");
return false;
$stmt->close();
}
}
}
?>
我试过 fetch,我试过 bind_result 等等,但它们都没有在 die 语句上打印正确的值。现在,当我将用户名存储在会话中并尝试打印时,这 工作。代码有什么问题?
【问题讨论】:
-
错误是什么?什么不起作用?
die($_SESSION["FirstName"]);是什么意思? -
@JvdBerg 它实际上什么也没打印。但是如果我存储了用户名,那么它会打印正确的用户名。我什至用反引号尝试了 bindcolumn,但它仍然没有检索到正确的名字。