我目前正在编写登录脚本,因为我正在尝试使用 OOP 学习 PDO。我有一个 index.php 页面,它只包含一个登录表单。然后我有一个 User 类,它看起来像这样:
<?php
include_once('database.php');
session_start();
class User{
public $id;
public $username;
public $password;
public $firstname;
public $lastname;
public function Login($username, $password) {
$db = new Database;
$db = $db->dbConnect();
$query = "SELECT * FROM users WHERE username = ? AND password = ?";
$statement = $db->prepare($query);
$statement->bindParam(1, $username);
$statement->bindParam(2, $password);
$statement->execute();
$rows = $statement->rowCount();
$data = $statement->fetchAll();
if( $rows == 1 ) {
$this->id = $data[0]['id'];
$this->username = $data[0]['username'];
$this->password = $data[0]['password'];
$this->firstname = $data[0]['firstname'];
$this->lastname = $data[0]['lastname'];
$_SESSION['SESSID'] = uniqid('', true);
header("location: dashboard.php");
}
}
}
?>
当用户登录时,他/她会转到dashboard.php。我想从那里访问当前的 User 类,所以我可以从那里使用 echo $user->username 。但是在dashboard.php 中,我必须将User 类声明为新的,因此它不会保留所有变量。
您对我如何访问登录函数中声明的 Dashboard.php 中的用户类变量有任何想法吗?
很抱歉解释不好,但我希望你能理解。先感谢您!