2

あるページから別のページにセッション変数を渡すための配列を取得しようとしています。セッション変数を、フォームから収集した $_POST データに等しく設定しています。テスト用の変数を出力すると、最初にページ 1 に設定されていることがわかります。

ページ1

session_start(); // start up your PHP session! 

if(isset($_POST['submit']))
{


unset($_POST['submit']);
$_SESSION['userdata'] = $_POST;
$userqty=$_POST;
print_r($_SESSION['userdata']);

2ページ目で、別の変数と等しく設定しようとしています。再度、配列がページ 2 に渡されたかどうかをテストしますが、渡されず、 array_sum関数に有効な配列がないというエラーが表示されます

session_start(); // PHP セッションを開始します!

$_SESSION['userdata'] = $userqty;

print_r($_SESSION['userdata']);

print_r($userqty;);

$userqty_total=array_sum($userqty);

どんな助けでも大歓迎です。

4

3 に答える 3

3

$_SESSION['userdata']初期化されていないの値に設定して$userqtyいます。

最初の行を次のように変更します。

session_start();
$userqty = $_SESSION['userdata']
于 2012-07-31T18:47:09.937 に答える
1

phpの関数をシリアル化およびシリアル化解除します

編集:実際には、配列を文字列に変換して配列に戻す必要はありません。そのままお使いいただけます。

最初のページ:

$_SESSION['data'] = $_POST;

2 ページ目:

$temp = $_SESSION['data'];

これで、ページ 1$tempの内容が表示されます。$_POST

于 2012-07-31T18:50:48.050 に答える
0

ページ1:

 session_start();
 $array  = array("appel","car","human");
 $_SESSION['array'] = $array ;

ページ 2 で:

for ($i = 0; $i < count($nom); $i++) {
        echo $array[$i] . ' ';
   }
于 2022-02-26T23:02:02.293 に答える