![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
こんばんは。いつもお世話になっております。
初歩的な質問かと思いますが、書籍を参考に、hiddenでのデータの受渡しの応用にと、配列でのチェックボックスを設けたのですが、上手く表示できずに悩んでおります。
書籍を片手にない知識を振り絞っているのですが、思うように結果を得る事が出来ません。お忙しい中恐縮ですが、アドバイスなど頂戴できたら幸いです。いつもすまらない質問ですみません。
confirm.php
<?php
if($_POST["open"]==""){
?>
<FORM name="form1" method="post" action="confirm.php">
<input type="checkbox" name="open[]" value="1" <?=$ca01?>>1
<input type="checkbox" name="open[]" value="2" <?=$ca02?>>2
<INPUT type="submit" value="送信">
<INPUT type="hidden" name="user_id" value="0001">
<?php
exit;
}
else{
?>
<FORM name="form1" method="post" action="view.php">
<?php
if(isset($_POST["open"])){
$open_box = implode(',',$_POST["open"]);
if(stristr($open_box, "1")){$ca01 = "checked";}
if(stristr($open_box, "2")){$ca02 = "checked";}
}
$open_box = implode(',',$_POST["open"]);
echo $open_box;
?>
<INPUT type="submit" value="決定">
<INPUT type="hidden" name="open[]" value="<?=$_POST["open"]?>">
<INPUT type="hidden" name="user_id" value="<?=$_POST["user_id"]?>">
</FORM>
<?php
}
?>
view.php
<?php
$open_box = implode(',',$_POST["open"]);
echo $open_box;
?>
No.1ベストアンサー
- 回答日時:
<INPUT type="hidden" name="open[]" value="<?=$_POST["open"]?>">
が原因です。
PHPは配列をスカラー変数(普通の変数)として扱うとArray(配列の意)と出します。
配列になれないものに配列を入れると当然エラーになりますがPHPはそのあたりを杓子定規にしないのでArrayですよと言って動いてくれます。
するならば
<INPUT type="hidden" name="open[]" value="<?=$_POST["open"]?>">
の部分を
<?php
$copen = count ($_POST["open"]);
for ($i = 0; $i < $copen; $i++) {
?>
<INPUT type="hidden" name="open[]" value="<?php echo $_POST["open"][$i];?>">
<?php
}
?>
にしてください。
izayoimizuki様
はじめまして。早速のご回答を有難う御座います。
おかげさまで描いている結果を返す事ができました。
投函後も色々と調べて(検索して)はいましたが、期待しているものを得る事が出来ずにおりました。このあたりも一筋縄には行かないのですね。また1つ学ぶ事ができました。
購入した書籍にも載っていないご説明を有難う御座いました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPの関数実行
-
チェックボックスの必須項目指定
-
検索時の選択内容を保持する方法
-
PHPで、ボタンを押すと同じペー...
-
エンターでsubmitさせたい
-
PHPで画像の渡しが上手く行きま...
-
PHPでクリックするたびに変数を...
-
ラジオボタンをsessionで使いたい
-
HTMLで前の画面に戻る時、入力...
-
PHP 配列の受け渡し
-
HTMLフォームで複数選択のチェ...
-
PHPのmysqlに格納したデータの...
-
PHP ボタンが押されたら処理を...
-
PHPとHTML+Xamppの掲示板で画像...
-
チェックボックスのうちひとつ...
-
フォームボタンを押すたびに数...
-
チェックボックスデータを引き継ぐ
-
Submit(送信ボタン)を押した...
-
高高兴兴は高兴と何が違います...
-
ボタンをクリックでPHP文を実行
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
<input type="hidden" >で配列...
-
PHP ボタンが押されたら処理を...
-
HTMLで前の画面に戻る時、入力...
-
検索時の選択内容を保持する方法
-
フォームへの前回入力値をクリ...
-
PHPの関数実行
-
ラジオボタンをsessionで使いたい
-
PHPで画像の渡しが上手く行きま...
-
入力フォーム→確認画面→送信画...
-
DBの値をチェックボックスに反...
-
フォームボタンを押すたびに数...
-
セッションにIDを振って値を代入
-
フォームでのリセットを使う方法
-
syntax error, unexpected '}' ...
-
【HTML(PHP?)】複数のフォーム...
-
画面が更新されてもチェックボ...
-
POSTデータのNAME属性をVALUEに...
-
チェックボックスを用い、MySQL...
-
エラーを元の画面に表示させるには
-
チェックボックスを使った複数...
おすすめ情報