別のファイルにリダイレクトする必要があるPHPファイルがありますが、2番目のファイルに配列を渡す必要があります。これどうやってするの。2つのphpファイルの間に配列を渡す
私はこれが間違っていることを知っていますが、これに論理的に似た何かが必要です。
<?php
$arr = array('this'=>'is', 'some'=>'stuff');
header("someurl.php", vals=>$arr);
?>
別のファイルにリダイレクトする必要があるPHPファイルがありますが、2番目のファイルに配列を渡す必要があります。これどうやってするの。2つのphpファイルの間に配列を渡す
私はこれが間違っていることを知っていますが、これに論理的に似た何かが必要です。
<?php
$arr = array('this'=>'is', 'some'=>'stuff');
header("someurl.php", vals=>$arr);
?>
$配列を公開しない場合は、PHP inbuildセッションのサポートを使用する必要があります。
session_start(); // DO CALL ON TOP OF BOTH PAGES
$_SESSION['array'] = $array;
echo $_SESSION['array']; // GIVES SAME $array FOR BOTH PAGES
header("Location: someurl.php?" . http_build_query($arr));
あなたがヘッダを行う方法はありません。それはしかし、これはちょうどその性質によってリダイレクトはPOSTを行うことができないというURL
someurl.php?vals=Array
注意をgeneratう
header("Location: someurl.php?vals=$arr");
する必要があるだろう。新しいGETリクエストが発生します。つまり、URLにデータを渡す必要があります。 URLが非常に大きい場合は、URLの長さに制限があるため、ほとんどのURLを失うことはほとんどありません。それは短いものだ場合
しかし、あなたのような何かを試すことができます。
$url = 'someurl.php?vals=' . url_encode(serialize($arr));
header("Location: $url");
をし、それが動作願っています。
セッションまたは要求に配列を格納してから取得することができます。 別のリクエストの場合は、セッションでそれを行う必要があります。
$ _SESSION ['myarray'] = $ array_you_want_to_store;
そして。
$ array_you_want_to_retrieve = $ _SESSION ['myaarray'];
ユーザがタブブラウズ(= everyone)を使用し、複数のリンクを同時にクリックすると、かなりの問題が発生します。 – Halcyon
はい、そうです。 –
「ファイルを渡す」とはどういう意味ですか? –