0

セッションの仕組みについて詳しく学んだログインページの作成方法を学んでいます。成功をもたらすサイトが見つかるまで、さまざまなサイトを検索しました。ただし、ログインに成功した後、ユーザーが自分のプロファイルをクリックし、プロファイルを編集し、アカウント設定を編集し、ログイン後にログアウトできる場所を設定したいと考えています。ログアウトは問題ありませんでしたが、プロフィールへのリンクが表示されませんでした。

テストログインチェックは次のとおりです。

ob_start();  
// To protect MySQL injection (more detail about MySQL injection)
$email = stripslashes($email);
$password = stripslashes($password);
$email = mysql_real_escape_string($email);
$password = mysql_real_escape_string($password);

$sql="SELECT * FROM users WHERE email='$email' and password='$password'";
$result=mysql_query($sql);

// Mysql_num_row is counting table row
$count=mysql_num_rows($result);

// If result matched $username and $password, table row must be 1 row
if($count==1){

// Register $username, $password and redirect to file "login_success.php"
session_register('email');
session_register('password');
session_register('userID'); // Tried and didn't work
session_register('lastlogin'); // Tried and didn't work

ob_end_flush();

これはメインページにあります

session_start(); 

// See if they are a logged in member by checking Session data
$userlinks = "";

if (isset($_SESSION['email'])) {
    // Put stored session variables into local php variable
    $userID = $_SESSION['userID'];
    $username = $_SESSION['username'];
    $lastlogin = $_SESSION['lastlogin'];

    //If session is successful, the following is available: profile, last login,    account and logout.
    $userlinks = '
    <a href="testuser.php?userID=' . $_SESSION['userID'] . '">' . $_SESSION['email'] . '</a> &bull; (' . $_SESSION['lastlogin'] . ') 
    <a href="testuser_account.php">Account</a> &bull; 
    <a href="testlogout.php">Log Out</a>';
} else {
    // If session failed, see if the user has a Damju account.
    $userlinks = 'Have an account? <a href="testlogin.php">Click Here</a> <br/> Not registered? <a href="testreg.php">Click Here</a>';
}

これは私が欲しいものです: (a href="testuser.php?userID=#")username(/a)

ご覧のとおり、私は自分自身を理解しようとしていたので、努力していないように見えません。

参考文献

PS: 他のリンクを見ましたが、それらはほとんど異なる方法で作成されていました。紛らわしい...

理解してくれる人に感謝します。理解していない場合は申し訳ありません。

4

1 に答える 1

0

を使用してユーザー ID を設定します

$_SESSION['userid'] = $userid;

セッションがすべてのページで開始されている限り、どこからでもセッション変数にアクセスできます。

session_start();

使用して

$_SESSION['userid'];

例えば

$userid= $_SESSION['userid'];
echo $_SESSION['userid'];

セッションの内容を確認したい場合は、

print_r($_SESSION);

ユーザーがログアウトするときは、変数の設定を解除してからセッションを破棄してください

unset($_SESSION['userid']);
session_destroy();
于 2012-05-28T16:34:16.970 に答える