ユーザーが特定のリンク[基本的にはクリックするとユーザープロファイルページに移動するユーザーリンク]をクリックするたびに、別のページに移動しようとしています。
SESSION変数を保存してリンクと同じページに表示すると、そのユーザーに対応するすべての電子メールIDがエコーされますが、別のページに移動するとすぐにセッションが表示されます間違った結果[他の電子メールID]を表示します。
ここに私のコードです。
<a href="?navigate=true" id="user" name="<?php echo $email; ?>" class="user"><?php echo $firstName.' '.$lastName;?></a>
このリンクは、データベースにレコードがある回数だけ表示されます。
<?php
if(isset($_GET['navigate']) && $_GET['navigate'] == "true"){
$_SESSION['email'] = $email;
echo $_SESSION['email'];
header('location: home.php');
}
?>
これで、このページ自体に上記のようなメールをエコーすると、そのユーザーに対応するすべてのメールが表示されます。このような。
user1 : emailid1
user2 : emailid2
しかし、私がhome.phpに移動するとすぐに、SESSION変数は常に最初の電子メールのみを出力します。
home.php
session_start();
echo 'email id is '.$_SESSION['email'];
私はどこかに私が間違っているつもりです知っているが、任意の提案は大きな助けになるでしょう。
ビューページやその他のページでセッションを開始できます。 –
セッション変数を使用するすべてのページでセッションを開始する必要があるので、すべてのセッションコンテナページの最初の行はsession_start()にする必要があります。 – Mitul
私はすでにhome.phpでそれを使用しています。上記の私の投稿を参照してください –