-1

現在、MySQL データベースから調査 (質問、ラジオ ボタン/チェックボックスとしての回答) を動的に入力するページがあります。生成された HTML は次のようになります。

  <form id="form1" name="form1" method="post" action="">
  1 . How do you classify yourself?
  <br/>
       <input type="radio" name="radio[0]" id="radio[0]" value="Alien" />Alien     
   <br />
       <input type="radio" name="radio[0]" id="radio[1]" value="Hobbit" />Hobbit     
   <br />
       <input type="radio" name="radio[0]" id="radio[2]" value="Tree" />Tree     
   <br /><br/>

  2 . Who are you?
  <br/>
       <input type="radio" name="radio[1]" id="radio[3]" value="Camel Collector" />Camel Collector     
   <br />
       <input type="radio" name="radio[1]" id="radio[4]" value="sadasd" />sadasd     
   <br />
       <input type="radio" name="radio[1]" id="radio[5]" value="Voolome" />Voolome     
   <br />
       <input type="radio" name="radio[1]" id="radio[6]" value="31231235" />31231235     
   <br />
    <br/>
  3 . Test Question
  <br/>
       <input type="radio" name="radio[2]" id="radio[7]" value="Nobody Knows" />Nobody Knows     
   <br />
       <input type="radio" name="radio[2]" id="radio[8]" value="Somebody Knows" />Somebody Knows     
   <br />
       <input type="radio" name="radio[2]" id="radio[9]" value="Who Knows" />Who Knows     
   <br />
    <br/>
  4 . Test Question 2
  <br/>
       <input type="radio" name="radio[3]" id="radio[10]" value="Answer1" />Answer1     
   <br /><br/>
  5 . First Multiple
  <br/>
      <input type="checkbox" name="Check4" value="Bike">Answer One<br>

   <br />
      <input type="checkbox" name="Check4" value="Bike">Answer Two<br>

   <br />
      <input type="checkbox" name="Check4" value="Bike">Answer Three<br>

   <br /><br/>
  6 . First Open!
  <br/>
      <input type="text" name="Ans5" />

   <br /><br/>
</form>

注意すべきいくつかの重要事項:

  1. 質問には 3 つのタイプがあります。「選択」 - 単一選択 (ラジオ ボタン)。"Multiple" - 複数選択 (チェックボックス); 「開く」 - ユーザー入力 (テキスト ボックス)。
  2. 各要素の名前は、適切な質問番号に対応しています (質問の横に表示されている番号は、質問 + 1 です (0 から始まるため)。[たとえば、質問 14 の名前は Radio[14] になります。

私の主な質問: これらのフィールドをデータベースに保存するにはどうすればよいですか? 各質問でどのオプションが選択されているかを調べるコードの書き方を理解しようとしています。

補足質問 : これらの質問を検証して、各質問に対して少なくとも 1 つのオプションが選択されていることを確認することもできますか? (その textbox!="" をチェックするのは簡単ですが、ラジオ ボタン/チェックボックスの場合はどうすればよいでしょうか?)

このフォームを生成するために使用される PHP コードは、必要に応じて提供できます。基本的に、1 つの変数を使用して質問番号 ($qno) を格納します。この変数は、ステートメントをループして MySQL からデータを取得する際のカウンターとして使用されます。回答の種類を特定し、フォームに適切なコントロールを配置します。

4

4 に答える 4

1

選択されたオプションは$_POST配列内にあり、あなたのオプションも機能するか、すべてのラジオボタンで名前を使用する場合でも、選択されているすべてのラジオボタンを含む配列を取得します。radio2radio[2]radio[]

また、チェックされるオプションは、同じ $_POST配列内にある配列内にある必要があります

チェックボックスに単純な名前を使用すると、最後にチェックされた値のみが php スクリプトに送信され、複数の値がチェックされていてもラジオとして機能します。

代わりにname="Check4"でなければなりませんname="Check4[]"

そして、答えを表示するために、次の$_POSTように単純に値を繰り返すことができます:

<?php

 if($_POST['submit']) {

    foreach($_POST as $key=>$value){  
      echo "Input name : $key Value:$value";//add condition to exclude your button or hidden fields
    }
  }
 ?>
于 2013-09-10T11:04:12.513 に答える
0

ラジオボタンを検証するには、これを使用します:

if($("#radio:checked").length==0)
{
  alert("Please Select atleast one");
  return false;
}
于 2013-09-10T11:03:21.140 に答える
0

このBuilding a Simple Quizを参照してください

このコードを使用してください:

<!DOCTYPE html>
<html>
<head>

</head>
<body>
<form id="form1" name="form1" method="post" action="">
  1 . How do you classify yourself?
  <br/>
       <input type="radio" name="radio[]" id="radio[0]" value="Alien" />Alien     
   <br />
       <input type="radio" name="radio[]" id="radio[1]" value="Hobbit" />Hobbit     
   <br />
       <input type="radio" name="radio[]" id="radio[2]" value="Tree" />Tree     
   <br /><br/>

  2 . Who are you?
  <br/>
       <input type="radio" name="radio1[]" id="radio[3]" value="Camel Collector" />Camel Collector     
   <br />
       <input type="radio" name="radio1[]" id="radio[4]" value="sadasd" />sadasd     
   <br />
       <input type="radio" name="radio1[]" id="radio[5]" value="Voolome" />Voolome     
   <br />
       <input type="radio" name="radio1[]" id="radio[6]" value="31231235" />31231235     
   <br />
    <br/>
  3 . Test Question
  <br/>
       <input type="radio" name="radio2[]" id="radio[7]" value="Nobody Knows" />Nobody Knows     
   <br />
       <input type="radio" name="radio2[]" id="radio[8]" value="Somebody Knows" />Somebody Knows     
   <br />
       <input type="radio" name="radio2[]" id="radio[9]" value="Who Knows" />Who Knows     
   <br />
    <br/>
  4 . Test Question 2
  <br/>
       <input type="radio" name="radio3[]" id="radio[10]" value="Answer1" />Answer1     
   <br /><br/>
  5 . First Multiple
  <br/>
      <input type="checkbox" name="Check4" value="Bike">Answer One<br>

   <br />
      <input type="checkbox" name="Check4" value="Bike">Answer Two<br>

   <br />
      <input type="checkbox" name="Check4" value="Bike">Answer Three<br>

   <br /><br/>
  6 . First Open!
  <br/>
      <input type="text" name="Ans5" />

   <br /><br/>
   <input type="submit" name="submit">
</form>
</body>
</html>

PHPコード

<?php if($_POST['submit']) {
    echo "<pre>";
    print_r($_POST);
    echo "</pre>";
    exit;
}
?>

出力

Array
(
    [radio] => Array
        (
            [0] => Hobbit
        )

    [radio1] => Array
        (
            [0] => sadasd
        )

    [radio2] => Array
        (
            [0] => Somebody Knows
        )

    [Ans5] => 
    [submit] => Submit Query
)
于 2013-09-10T11:03:45.690 に答える
0

次のようにします。

<form id="form1" name="form1" method="post" action="">
1 . How do you classify yourself?
<br/>
   <input type="radio"  id="radio[0]" value="Alien" name="question1" />Alien     
<br />
   <input type="radio"  id="radio[1]" value="Hobbit" name="question1" />Hobbit     
<br />
   <input type="radio"  id="radio[2]" value="Tree" name="question1" />Tree     
<br /><br/>

2 . Who are you?
<br/>
   <input type="radio" id="radio[3]" value="Camel Collector" name="question2" />Camel Collector     
<br />
   <input type="radio"  id="radio[4]" value="sadasd" name="question2" />sadasd     
<br />
   <input type="radio"  id="radio[5]" value="Voolome" name="question2" />Voolome     
<br />
   <input type="radio"  id="radio[6]" value="31231235" name="question2" />31231235     
<br />
<br/>
3 . Test Question
<br/>
   <input type="radio"  id="radio[7]" value="Nobody Knows" name="question3" />Nobody Knows     
<br />
   <input type="radio"  id="radio[8]" value="Somebody Knows" name="question3" />Somebody Knows     
<br />
   <input type="radio"  id="radio[9]" value="Who Knows" name="question3" />Who Knows     
<br />
<br/>
4 . Test Question 2
<br/>
   <input type="radio"  id="radio[10]" value="Answer1" name="question4" />Answer1     
<br /><br/>
5 . First Multiple
<br/>
  <input type="checkbox"  value="Bike" name="question5[]">Answer One<br>

<br />
  <input type="checkbox" value="Bike" name="question5[]">Answer Two<br>

<br />
  <input type="checkbox"  value="Bike" name="question5[]">Answer Three<br>

<br /><br/>
6 . First Open!
<br/>
  <input type="text" name="question6" />

<br /><br/>
</form>
于 2013-09-10T10:59:45.673 に答える