我遇到了第一個php項目的問題。 一位朋友幫我帶了一點這個學校的項目,我現在卡住了。登錄會話讀取數據庫變量
我想讀取我的數據庫值並在會話中使用它們。
這是我爲database.php配置
<?php session_start(); ?>
<?php
//DB Config
define('DB_USER', 'user');
define('DB_PASS', 'password');
define('DB_NAME', 'KBZ');
define('DB_HOST', 'localhost');
$odb = new PDO('mysql: host=' . DB_HOST . ';dbname=' . DB_NAME, DB_USER, DB_PASS);
//Other Configs
if (!empty($_SERVER['HTTP_CF_CONNECTING_IP']))
{
$userIP = $_SERVER['HTTP_CF_CONNECTING_IP'];
}
else if(!empty($_SERVER['HTTP_X_FORWARDED_FOR']))
{
$userIP = $_SERVER['HTTP_X_FORWARDED_FOR'];
}
else if(!empty($_SERVER['HTTP_CLIENT_IP']))
{
$userIP = $_SERVER['HTTP_CLIENT_IP'];
}
else
{
$userIP = $_SERVER['REMOTE_ADDR'];
}
?>
然後我有一個connection.php文件
$user = new user($odb);
class user
{
var $odb;
function __CONSTRUCT($odb)
{
$this -> odb = $odb;
}
function loggedIn()
{
if (isset($_SESSION['username'], $_SESSION['ID']))
{
return true;
}
else
{
return false;
}
}
和我的login.php
<form id="form-login" role="form" action="" method="post">
<?php
if (isset($_POST['LoginButton'])){
$DBchkusr = $odb -> prepare("SELECT * FROM `Users` WHERE `username` = :username AND `password` = :password LIMIT 1");
$DBchkusr -> execute(array(':username' => $username, ':password' => hash('SHA256', $password)));
$valid = $DBchkusr -> fetchColumn(0);
if ($valid)
{
$DBGetID = $odb -> prepare("SELECT `ID`, FROM `Users` WHERE `username` = :username LIMIT 1");
$DBGetID -> execute(array(':username' => $username));
$_SESSION['username'] = $username;
$_SESSION['ID'] = $DBGetID -> fetchColumn(0);
}
我怎樣才能顯示成功登錄用戶的名稱? 是否有可能將數據庫信息存儲爲像這樣的Session變量?
例如:
這與phpmyadmin有什麼關係? – symcbean
除了phpmyadmin,@symcbean不再查詢? – Escobar