[PHP-users 28966] フォームから送信された配列データがうまく取得できない

M.Shimode mitsu @ acquez.co.jp
2006年 4月 11日 (火) 01:53:08 JST


シモデと申します。
いつも利用させていただいています。

不可解なことがあり投稿しました。

以下のようなフォームからの実行スクリプトへの処理を作成しました。

------- 送信フォーム --------
<form action="exec.php">
  <input type="checkbox" name="item[]" value="10001">アイテム1
  <input type="checkbox" name="item[]" value="10002">アイテム2
  <input type="checkbox" name="item[]" value="10003">アイテム3
  <input type="submit" value="送信">
</form>

------- 実行スクリプト --------
<?

header("Expires: Thu, 30 Jul 2005 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

header("Cache-Control: no-cache, must-revalidate");           // HTTP/1.1
header("Pragma: no-cache");

session_cache_limiter('no-cache');

reset($item);

while(list($key, $val) = each($item)) {

  echo $key . ":";

}

?>

ここでたとえばアイテム1と3にチェックを入れて送信を行うと、
なぜか出力結果が、

 1:3:

となってしまい、値の1桁目だけしか取得されません・・・・
以前に似たような処理のものを作成したときには、
特に問題なく値を取得できていたのですが、
今回はここから抜け出せずに途方にくれています。
こういったケースのことをご存知の方がいらっしゃいましたら、
ぜひとも、ご教示いただけたら幸いです。
よろしくお願いいたします。





PHP-users メーリングリストの案内