0

jQuery を使用して、ユーザーの略歴を更新するためのボックスを表示するリンクがあります。ただし、そのリンクは、ユーザーがログインしている場合にのみ表示され、そのユーザーのページにのみ表示されます。たとえば、ログインしている場合は自分のページに表示されますが、友達のページに移動しても表示されないため、プロフィールを変更する必要はありません。これが私のコードです:

    <div class="changeBio">
        <?php
            if ($_SESSION['loggedin'] == true) {
                ?><a href="" id="showBio">Change bio</a><?php
            }
        ?>
    </div>

このコードは、ユーザーがログインしていることを確認しますが、正しいユーザーかどうかを確認するには、if ステートメントに何を入力すればよいでしょうか? 前もって感謝します!

編集:

各ユーザーがログインすると、情報が保存されているデータベースから一意の ID が取得されます。各友達ページはこれらの ID に基づいて表示されるため、ログインしている人のページにのみリンクを表示し、友達ページには表示したくありません。if ($_SESSION['loggedin'] && $id != $_GET['id']) と if ($_SESSION['loggedin'] && $id == $_SESSION['id']) を試しましたどちらも機能しません..表示している友達ページのURLで、そのユーザーのIDがGET変数として表示されます。

4

3 に答える 3

0

ログインしているかどうかだけでなく、誰がログインしているかを含める必要があります。どの略歴を表示するかを決定するためにも、その情報が必要になります。

あなたのデータでこのようなもの:

<div class="changeBio">
    <?php
        $id = $_POST['id'];
        if ($_SESSION['loggedin'] == true && $_POST['id'] == $_SESSION['loggedin_userid']) {
        ?><a href="biopage.php?userid='<?php echo $_SESSION['loggedin_userid']; ?>'" id="showBio">Change bio</a><?php
        }
    ?>
</div>
于 2012-05-15T20:48:32.250 に答える
0

ID、ユーザー名、または現在ログインしているユーザーの識別機能をセッション データ内に保存する必要があります。

次に、特定のユーザーが次のようなコードでログインしているかどうかを確認できます

if ($_SESSION['currentUserID'] == $idOfTheUserThatTheBioBelongsTo)
    // let the user change the bio
于 2012-05-15T20:50:41.403 に答える
0

上記のように $id とともに別の変数 $current_user をセッションに保存し (これはユーザーごとに変化し続けると思います)、現在のユーザーのメッセージを表示する必要があるページで使用できます。

if($id == $current_user){
 //whatever you want to do
}
于 2012-05-15T20:59:25.937 に答える