私のプロフィールページで$ Session []変数を読んでみたいが、試している間に問題がある。 これは私のPHPスクリプトは、私がのためにprofile.phpページ上に表示したいファーストネーム、姓、住所やユーザ名、パスワード、などの変数を持っているアカウントでデータベースにログイン情報ファイルget stored PHPのログインセッションのデータベース変数
<?php
if (isset($_POST['LoginBtn']))
{
$username = $_POST['username'];
$password = $_POST['password'];
if (empty($username) || empty($password))
{
$show -> showError("please fill out all the fields");
}
else
{
$SQLCheckUser = $odb -> prepare("SELECT COUNT(*) FROM `Account` WHERE `username` = :user AND `password` = :password LIMIT 1");
$SQLCheckUser -> execute(array(':user' => $username, ':password' => hash('SHA512', $password)));
$loginCheck = $SQLCheckUser -> fetchColumn(0);
if ($loginCheck)
{
$SQLGetID = $odb -> prepare("SELECT `ID`, FROM `Account` WHERE `username` = :username LIMIT 1");
$SQLGetID -> execute(array(':username' => $username));
$_SESSION['username'] = $username;
$_SESSION['ID'] = $SQLGetID -> fetchColumn(0);
$show -> showSuccess('Willkommen... <meta http-equiv="refresh" content="2;url=index.php">');
}
else
{
$show -> showError('user was not found!');
}
}
}
?>
でありますこのような例
<h4 class="profile-user"><?php echo $_SESSION['firstname']; ?></h4>
<p class="profile-job"><?php echo $_SESSION['lastname']; ?></p>
<p class="profile-job"><?php echo $_SESSION['adress'];?></p>
この問題を解決するにはどうすればよいですか? ページが
<?php session_start(); ?>
とのセッションを開始するPHPファイルとDB接続
<?php
$show = new show();
$user = new user($odb);
$status = new status($odb);
class show
{
function showError($error)
{
echo '<div class="alert alert-danger"><a class="close" data- dismiss="alert" href="#">×</a><h4 class="alert-heading">error!</h4>'.$error.'</div>';
}
function showSuccess($success)
{
echo '<div class="alert alert-success"><a class="close" data-dismiss="alert" href="#">×</a><h4 class="alert-heading">Login success!</h4>'.$success.'</div>';
}
}
class user
{
var $odb;
function __CONSTRUCT($odb)
{
$this -> odb = $odb;
}
function loggedIn()
{
if (isset($_SESSION['username'], $_SESSION['ID']))
{
return true;
}
else
{
return false;
}
}
function isAdmin()
{
$SQL = $this -> odb -> prepare("SELECT `admin` FROM `Account` WHERE `ID` = :id");
$SQL -> execute(array(':id' => $_SESSION['ID']));
$rank = $SQL -> fetchColumn(0);
if ($rank == 1)
{
return true;
}
else
{
return false;
}
}
}`
が含まれている私の目標は、プロフィールページ(フルネームでログインしているユーザーのすべてのデータベース変数を表示することです、住所、電話番号)誰かが私は本当にいただければ幸い私のコードを修正するのに役立つことができれば:)
''どのように私はこの問題を解決できますか? ' - 何の問題?何がうまくいきませんか?セッション値は印刷されませんか?これらのセッション値はどこで設定しますか? – David
たとえば、この文字列を使用する場合
<?php echo $ _SESSION ['firstname']; ?>
私はエラーを受け取ります – Vezuureエラーメッセージを読むことは良い最初のステップになります。 – David