• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:続々 入力・確認・登録に関して)

テキストエリア、チェックボックス、ラジオボタンを設置した際のデータ認識の問題

Ikonos00の回答

  • Ikonos00
  • ベストアンサー率28% (86/302)
回答No.1

とりあえず、確認させてください。 現状は、confirm.phpの 「入っている」「入っていない」のif文で、 『「入っていない」にしかいかない』の認識で良いですか? また、 >confirm.phpの$bConfirm = array(ID=>TRUE....や、foreach($bConfirm as $value)....は、そのままなので、 についてですが、これは「そのまま同じように付け足した」ではなく「全く手を付けていない」ということですか? で、もしよろしければ、confirm.phpの このあたり(中略以外)を載せていただけるとありがたいです。(もしくは編集したところのみを) <html> <body> <?php //confirm.php session_start();//defineとの関係 require_once "definition.php"; //これにFALSEが入力されたら、アウト $bConfirm = array(TITLE=>TRUE, URL=>TRUE, MAIL=>TRUE); $nextPage = TRUE;//FALSE $bConfirm[TITLE] = containsChar( $_POST[TITLE] );// 下の方に自分で定義した関数 文字がはいっているか return "true" or "false" $bConfirm[URL] = containsChar( $_POST[URL] ); $bConfirm[MAIL] = containsChar( $_POST[MAIL] ); //フォームすべてに文字がはいっているか確認 foreach($bConfirm as $value){ if(!$value){ $nextPage = FALSE; } } 中略 //最後に入っていなくても入っていてもセッションに入れる…1 $_SESSION[URL] = $_POST[URL]; $_SESSION[TITLE] = $_POST[TITLE]; $_SESSION[MAIL] = $_POST[MAIL]; //文字が変数に入っているか判定する関数 function containsChar( $sPost ){ $bConfirm = TRUE; //$choppedChars = chop($sPost); if(!(isset($sPost)) || $sPost == "") { $bConfirm = FALSE; //スペース等を抜くchop関数 } return $bConfirm; } ?> </body> </html>

sadacha
質問者

補足

Ikonos00様 おはよう御座います。早速お返事いただいていたようで有難う御座います。少々長文になりそうなので、補足の欄から失礼いたします。 >『「入っていない」にしかいかない』の認識で良いですか? はい。if文が原因なのか、全て入力しても入力データを認識せず、「データが入っていない」と処理されてしまうのです。説明不足ですみません。 >これは「そのまま同じように付け足した」ではなく「全く手を付けていない」ということですか? サンプルでは3つほどのフォームから成り立っておりますが、テキストエリアやチェックボックス、ラジオボタンを追加し、現在計30ちょっとのフォームから成り立っているのですが、全て$bConfirm = array(TITLE=>TRUE, URL=>TRUE....のように、=>TRUEで記述しております。チェックボックスも=>TRUEも記述しているのですが、そのチェックボックスの数文だけ記述しているので、それが原因なのかな?などと初心者ながらに思って入るのですが…何をどうしたら分からない状況です。 それと私が追加で記述しているコードですが、隠すつもりではないのですが、先のも述べたように30少々の者から成り立っており、ココの補足欄では文字数が足りなく、表示させる事が出来ません。Ikonos00様も提示してくれたconfirm.php内の主要コードは、=>TRUEなど、チェックボックスなども表示の記述方法と一緒ですが、いちおうフォームの数だけ下記の$_SESSION[URL]....も記述している状況です。 説明不足なところは御座いますが、引き続きご指導頂ければ幸いです。宜しくお願い致します。

関連するQ&A

  • チャックボックスについて

    こんばんは。お世話になっております。 ココ最近、お世話になりっぱなしで恐縮なのですが、何をやっても上手く行かず、お知恵を頂戴したく投函させて頂きます。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=2440539 先日、上記ページにて、複数のチェックボックスを1つのチェックボックスにて、チェックオン・オフをするためのコードを、JavaScriptのカテゴリにてご指導いただいたのですが、DBからの検索一覧(10件ずつ。といったように1ページ当りの件数の規制あり)に、チェックボックスを表示させているのですが、検索結果を表示させる際に、whileを使ってループを行う場合、どのようなコードの変更があるかが分からず投函させていただきました。 お忙しい中恐縮ですが宜しくお願い申し上げます。

    • 締切済み
    • PHP
  • 続 入力・確認・登録に関して

    お世話になっております。先日、本タイトルと同じ質問 http://oshiete1.goo.ne.jp/kotaeru.php3?q=2201856 をさせてもらった者ですが、先日の質問を引き続き進めている状況です。 先日は、良き有識者の回答を得る事が出来、問題は解決したのですが、またもや問題に遭遇してしまいました… input.php内において、チェックボックス、およびラジオボタンを設置した場合の一連の処理は どのようにしたら宜しいのでしょうか?現段階で、確認をした際、未入力のあった場合に最初の画面に戻ったとき、チェックボックスおよびラジオボタンで選択したものが正常に作動しないのです。 丸投げのようで恐縮いたしますが、下記のような通常?のPOSTの受渡しを参考に、色々とコード変えてはいるのですが、なかなか思うように解決する事が出来ません。 お手数をお掛けし申し訳ありませんが、ご指導いただければ幸いに思います。 echo <<<EOD if($my_kaiin == "1"){$a01 = "selected";} if($my_kaiin == "会員"){$a02 = "selected";} if($my_kaiin == "非会員"){$a03 = "selected";} echo " <p> <select name=\"my_kaiin\">\n <option value=\"1\" $a01>-選択-</option>\n <option value=\"会員\" $a02>会員</option>\n <option value=\"非会員\" $a03>非会員</option>\n </select>\n "; EOD; echo <<<EOD f($my_gyoutai == "法人"){$c01 = "checked";} if($my_gyoutai == "個人"){$c02 =" checked";} echo "<input type=\"radio\" name=\"my_gyoutai\" value=\"法人\" $c01>法人\n &nbsp;&nbsp; <input type=\"radio\" name=\"my_gyoutai\" value=\"個人\" $c02>個人\n "; EOD;

    • ベストアンサー
    • PHP
  • フォーム内でのリストボックスなどの下三角とそのバックの色。

    昨晩 http://oshiete1.goo.ne.jp/kotaeru.php3?q=351693 という質問をし、テキストボックスや、送信ボタンなどは変更できました。 さらに、リストボックスなどの右の下三角やそのまわり(グレー部分)の 変更と、ラジオボタンも変更できたら・・・と欲張ってきました。 ラジオボタンはできなくてもいいのですが、リストボックスはぜひ変えたいの です。 何か方法はありますか?

  • フォームの内容を確認画面で表示

    以前ご質問した内容で、改良したい部分があって、ご質問しました。 以前の質問は、 フォームで必要事項を入力してもらい(テキストやコンボなど)、「確認」みたいなボタンを押すと、入力した必要事項が確認できるものを作りたいのですが。 その値をメールで送信やDBに書き込むような作業はしない予定です。 単純に表示が出来ればOKです。 その画面を印刷して使用するものなので。 というものでした。 テキストボックスとコンボについては、出来ましたが、 チェックボックス、ラジオボタンの場合、どのように確認画面で表示すれば良いのかわからずご質問しました。 確認画面では、チェックボックスの値をテキストで表示するのではなく、 チェックボックスそのものを表示して、チェックの有無を確認できるようにしたいのですが(チェックをはずしたり出来る状態) 同じようにラジオボタンも選びなおせるようにしたいのです。 前回の投稿のURLはhttp://oshiete1.goo.ne.jp/kotaeru.php3?q=1014263 です。 使用したソースは、 michisanpoさんにお答え頂いたものを元にして使用しています。

    • ベストアンサー
    • Perl
  • エクセルVBAで、テキストボックスに値を入れる(3)

    質問がバラバラになってしまってすみません! エクセルVBAで、テキストボックスに値を入れる(1)の 回答13で、 データシートの何行目~何行目までを印刷させる方法(Sheet7にボタン) をさせるには、どうしたら良いでしょうか?宜しくお願いします。 前回のURL:http://oshiete1.goo.ne.jp/kotaeru.php3?qid=79173       http://oshiete1.goo.ne.jp/kotaeru.php3?qid=85389

  • チェックボックス、ラジオボタンのデータの受け渡し

    以前質問し、回答して頂いた内容に沿って作成を進めたのですが、行き詰ってしまったので質問致します。 以前の質問内容は下記のURLです。No.3に記載のソースで作成を進めています。 http://oshiete1.goo.ne.jp/kotaeru.php3?q=1014263 フォームからのデータを表示するシステムを作成しているのですが、テキストボックス、コンボボックスは出来たのですが、チェックボックスとラジオボタンの場合の値の受け渡しがわからなくなってしまいました。 色々ためしたのですが解決しませんでした。 どなたか回答をお願い致します。 何度も申し訳ありません。

    • 締切済み
    • CGI
  • phpで重複チェック

    phpの重複チェック phpで配列の重複データをチェックして、重複しているデータを表示しようとしています。 foreach ($arry as $key => $value) { $err_count = 0; foreach ($arry as $key => $value2) { if ($value == $value2) { $err_count++; if ($err_count >= 2) { echo "重複".$value2; } } } } としているのですが、 同じモノが2回表示されて困っています。 重複しているデータは一回だけ表示したいのですが、 なにか方法ないでしょうか?

    • ベストアンサー
    • PHP
  • CD TEXTを入力したい。

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=402333 で質問の続きです。 CDの作成を押しても「CD TEXT」のところのチェックができません。 どうしてでしょうか? 何を直せばきちんと動作しますか?

  • 画面が更新されてもチェックボックスのチェック状態を維持したい

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=1972507 に追加質問です。 表示されている sample.php にあるチェックボックスをON/OFFしてから 再計算ボタンを押下後、チェックボックスのON/OFF状態を 引き継いで(維持して)sample.phpを表示させたいという質問ですが、 上記質問では、チェックボックスが配列扱いとなっており、 回答者の皆さんからはforeachによる解法をお教えいただきました。 今回は、下記のように配列でない場合の質問です。 <form action="<?php $PHP_SELF ?>" method="post"> <input type="checkbox" name="fruit" value="apple">りんご</td> <input type="submit" name="exec" value="再計算"> </form> よろしくお願い致します。

    • ベストアンサー
    • PHP
  • Accessでチェックボックスのチェックをすべてはずす方法

    http://oshiete1.goo.ne.jp/kotaeru.php3?q=522365 で質問しました。 チェックの値をなくす方法として、 http://oshiete1.goo.ne.jp/kotaeru.php3?q=164713 を発見し、以下のようにしてみました。 テーブル名:「T_マスタ」「T_アプリ」 T_マスタ(F_マスタ)からT_アプリ(F_アプリ)を開き、チェックボックス(フィールド名:check)にチェックをした後に、 ボタンを押したらチェックボックスをすべて「No」にしたいのです。 ボタンのコードは Dim strSQL As String strSQL = "update T_アプリ set check = false" DoCmd.RunSQL strSQL DoCmd.Close としました。 ですが、エラーが出てしまいます。 (レコードのロックとかって出ました。) どうすればきちんと値が「NO」になるのでしょうか?