プロが教える店舗&オフィスのセキュリティ対策術

こんにちはー!

PHPで作った2次元配列をPOSTで渡す場合、丸ごと渡すことはできないのでしょうか。

1.CSVファイルを選択させ、読み込み
2.CSVの内容確認画面を表示
3.ユーザに対象レコードを選択させる
4.データベースへ追加
という処理を作っています。

「2.内容確認画面を表示」の際、
内容表示部分と、データベース追加用のPOSTで渡す部分は
配列をループさせています。

内容表示部分は問題無いですが、データベース追加用の部分は
配列の要素数分hiddenタグを書き出しています。

要素数が多ければ多いほど、
ソースがすごい量になってしまうのですが、
配列を丸ごと渡すことはできないのでしょうか?

PHP4、もしくはPHP5でなにか方法はないでしょうか?

A 回答 (3件)

セッションを使わない方法も書いてみます。



内容確認画面からは、ユーザが選択したレコードの、レコード識別子のみがサーバにPOSTされてくるようにします。

4の処理では、サーバ側のCSVファイルを再度読み込んで、上記のレコード識別子に該当するデータを取得し、それをDBに追加します。
    • good
    • 0

hiddenがたくさん並ぶのが嫌であれば#1さんのおっしゃられる通りセッションを使うのが良いかと思います。



$hogeが以下のような配列だとして、
$hoge = array("aaa","bbb","ccc");
-----渡すphp-----
session_start();
for($i=0;$i<count($hoge);$i++){
$_SESSION['hoge'][] = $hoge[$i];
}
といった感じに格納して
-----受けとるphp-----
session_start();
$gethoge = $_SESSION['hoge'];
for($i=0;$i<count($gethoge);$i++){
やりたい処理;
}

でいけるかと思います。
    • good
    • 0

セッションで渡せるかもしれません

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!