0

次の問題があります。私は以前にphpセッションを使用していましたが、これには至りませんでした。$_SESSION を使用して変数を渡そうとしました。新しい変数をいくつか追加するまで、すべてが順調でした。

私はこのコードをpage1.phpに持っています:

... 
if($count==1){
$row=mysql_fetch_array($result);
$_SESSION = array();
$_SESSION['myusername']=$myusername;
$_SESSION['mypassword']=$mypassword;
$_SESSION['firstname']="someteststring"; //new added variable
$_SESSION['lastname']="someteststring"; //new added variable
?>
<script> // i put this following script just because i wanted
         // to see whats in session variables
    console.log(<?php echo json_encode($_SESSION); ?>);
</script>
<?
header("location:page2.php");
session_write_close();
...

この後、firebug コンソールですべての変数を確認できます - ヘッダー関数がコメントされている場合:

firstname   "someteststring"
lastname    "someteststring"
mypassword  "password"
myusername  "username"

ヘッダーのリダイレクト ( page2.php ) の後、2 つの古い変数しか表示されません。

mypassword  "password"
myusername  "username"

そして、page2.phpは次のとおりです。

<?php
session_start();
if(!(isset($_SESSION['myusername']))){
header("location:index.php");
}
echo $_SESSION['myusername'];
echo $_SESSION['mypassword'];
echo $_SESSION['lastname'];
echo $_SESSION['firstname'];
?>

ブラウザからキャッシュされたものとクッキーも削除したことに注意してください。誰か助けてください。多分私は何かを忘れました。

ありがとうございました。

4

0 に答える 0