私はphpセッションを作成し、そのようにデータを割り当てました
session_start();
$_SESSION['desd']=$imgD;
他のページで取得しようとすると、何も得られません。
これは私が2番目のページで行ったことです。
session_start();
$_imgname = $_SESSION['desd'];
どうやってするか?
$imgD
変数が定義されていると仮定すると、コードは有効です(var_dump
これは、これをチェックする1つの方法ですがprint
、echo
機能する場合もあります)。
ブラウザでCookieが有効になっていることを確認してください。
また、session_start()がスクリプトの先頭近くにあることを確認してください。これは、毎回クライアントに送信される最初のものである必要があります。
セッションをテストするには、次のコードで「index.php」を作成します。
<?php
session_start();
if(isset($_SESSION['views']))
$_SESSION['views'] = $_SESSION['views']+ 1;
else
$_SESSION['views'] = 1;
echo "views = " . $_SESSION['views'];
?>
ページを数回リロードすると、増加する数字が表示されます。
2つのページ間でセッション変数を渡す例は次のとおりです。
PageOne.php
<?php
session_start();
// makes an array
$colors=array('red', 'yellow', 'blue');
// adds it to our session
$_SESSION['color']=$colors;
$_SESSION['size']='small';
$_SESSION['shape']='round';
print "Done";
?>
PageTwo.php
<?php
session_start();
print_r ($_SESSION);
echo "<p>";
//echo a single entry from the array
echo $_SESSION['color'][2];
?>
簡単にするために、PageOne.phpとPageTwo.phpを同じディレクトリに配置します。PageOne.phpを呼び出してから、PageTwo.phpを呼び出します。
を呼び出すsession_start()
と、サーバーは Cookie からセッション ID を取得します。
コードが有効であるため、Cookie に問題がある可能性があります。