お世話になります。
phpで2次元配列の値の受け渡しについて教えてください。
A.phpファイルからB.phpファイルに2次元配列の値を渡したいと考えています。
出来ればPOSTで2次元配列を送りたいと考えていますが、そもそもPOSTで2次元配列を送ることはできるのでしょうか?
たとえば
[A.php]
$DATA = array(
array('name'=>"tanaka", 'age'=>"20"),
array('name'=>"sasaki", 'age'=>"30"),
);
をB.phpファイルに送るにはどうすれば良いのでしょうか?
どなたか教えて頂けないでしょうか?
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
で一つの文字列にして
http://us.php.net/en/function.unserialize
で受け取る。
#悪意ある人がPOSTで変な送ってくるようなのを防ぐためにローカルファイルを経由したほうがいいのではないかという気がする
遅くなってすいません。
>#悪意ある人がPOSTで変な送ってくるようなのを防ぐためにローカルファイルを経由したほうがいいのではないかという気がする
セキュリティにやはり問題がありそうですね。
もう少し違う方法を考えてみますね。
ありがとうございました。
No.3
- 回答日時:
文字列を経由するならやはりserializeでしょうね
クォーテーションの問題も考えるとurlencodeしておいた方がよいですね
//X.php
<?
$DATA = array(
array('name'=>"tanaka", 'age'=>"20"),
array('name'=>"sasaki", 'age'=>"30")
);
$dataStr=urlencode(serialize($DATA));
print <<<eof
<form action ="Y.php" method="post">
<input type="hidden" name="DATA" value="{$dataStr}">
<input type="submit" value="go">
</form>
$dataStr
eof;
?>
//Y.php
<?
$data=$_REQUEST["DATA"];
$data=unserialize(urldecode($data));
print_r($data);
?>
ただし、#2さんの指摘もあるとおり、ユーザーに任意に書き換えられてしまう
危険が高いので、ふつうはこんなことはしません。
返事遅くなってすいません。
<input type="submit" value="go">
を使うとユーザーに「go」ボタン押下のアクションが必要ですが、
そうではなく、アクションなしにB.phpファイルに送りたかったのですが。
そもそも説明不足でした。。。
すいません。
ご指摘通りセキュリティに問題があるなら他の方法を考えないとです。
・2次元配列をばらしてGETでB.phpに送信
・B.phpで値を受け取って2次元配列に組み立て。
こんな感じでやってみようかと考えています。
No.1
- 回答日時:
普通はセッションつかいますね
//A.php
<?
session_start();
$DATA = array(
array('name'=>"tanaka", 'age'=>"20"),
array('name'=>"sasaki", 'age'=>"30"),
);
$_SESSION['DATA'] =$DATA;
?>
<a href="B.php">B</a>
//B.php
<?
session_start();
$DATA=$_SESSION["DATA"]
print_r($DATA);
?>
この回答への補足
回答ありがとうございます。
私もSESSIONは考えましたが、
色々都合が悪くSESSIONではなくPOSTと考えていました。
POSTではむりなのでしょうか・・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# c言語の問題です 課題1 (二分探索木とセット) 大きさ size の配列 array を考える。す 2 2023/01/10 21:08
- PHP 配列の値の更新方法について 1 2022/08/05 09:49
- Perl perlで2次元配列をサブルーチンに値渡しで渡す 5 2022/12/17 18:49
- C言語・C++・C# C言語初心者 ポインタについて、お助けください、、 2 2023/03/15 23:50
- PHP ファイルの書き込みについて教えて下さい。 1 2023/03/20 12:01
- PHP PHPで画像の渡しが上手く行きません。 1 2023/02/02 09:39
- C言語・C++・C# pythonのファイルの並びでの読み込みとリストについて 4 2022/04/13 03:52
- PHP php 入力画面から確認表示画面へ情報の受け渡しについて。 1 2023/06/07 18:00
- PHP $_SESSIONについて教えて下さい。 2 2023/03/02 09:18
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プルダウンメニューにDBの内容...
-
要素(文字列)から指定値を検索
-
pukiwikiのユーザ認証の設定で...
-
読み(あ行~わ行)ごとに分け...
-
foreachで上限回数指定方法また...
-
特定の文からメールアドレスの...
-
postgresql関数をつかったレコ...
-
PHP 多次元配列変数のデータ受...
-
ヒアドキュメントの中のfor文
-
配列の要素(value)に、変数を...
-
pg_copy_fromの使い方について...
-
sqlのデーターを『あ行』『か行...
-
Smartyのテンプレートからjavas...
-
配列をファイルに書き込む方法
-
Ethnaでのsection使用法
-
PHP、{}記号の意味
-
配列を指定した順序でソート
-
PHPのセレクトボックスの初期値...
-
ExcelVBAのチェックボックスに...
-
行列の計算【配列 関数】
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プルダウンメニューにDBの内容...
-
phpとmysqlで「あいまい検索」...
-
PHP5の外部コマンド実行で、バ...
-
「ローマ字 -> ひらがな」へPHP...
-
Mysqlとphpでソートや更新時の...
-
PEAR・MDB2のモジュールロード...
-
HTTPのメッセージボディについ...
-
数学の「組み合わせ」を求める...
-
順位を付ける時のスコアの重複...
-
Zend_Form_Element_Hash
-
日付から順にデータを並び替えたい
-
占いのPHPを作成中ですが・・・
-
しりとり 無限ループ?
-
選択日と終了日を配列で取得したい
-
多次元配列のカウント+1の仕方
-
mysqlにinsertするとエラーがで...
-
$xml要素を階層指定して取得し...
-
サイト名を取得するPHP
-
要素(文字列)から指定値を検索
-
月一覧を取得するには?(20120...
おすすめ情報