簡體   English   中英

表單,單選按鈕和復選框發送到PHP

[英]Form with radio buttons & checkboxes sending to php

Harmiih真的幫助了我的腳本(http://stackoverflow.com/questions/7510546/html-form-name-php-variable)。 基本上我有一個問題表。 表單從表中檢索問題,然后我需要選擇的答案轉到answer.php。 一切都在使用收音機但是只有復選框,它才會發送最后選中的復選框。 有人可以幫幫我嗎?

形成

$sql1="SELECT * FROM ex_question WHERE test_name = '$tid' AND q_type = 'mr' ORDER BY RAND() LIMIT 5";
$result1=mysql_query($sql1);

echo "<form method='post' action='answer.php'>";

while($row1 = mysql_fetch_array($result1))
{
    $test_name=$row1['test_name'];
    $q_nr=$row1['q_nr'];
    $q_type=$row1['q_type'];
    $question=$row1['question'];
    $option1=$row1['option1'];
    $option2=$row1['option2'];


    echo "<P><strong>$q_nr $question</strong><BR>";

    if ($q_type != 'mr') {

        if($option1!="") {
            echo "<input type='radio' name='question[$q_nr]' value='$option1'>$option1<BR>";
        } else {
            echo '';
        }
        if($option2!="") {
            echo "<input type='radio' name='question[$q_nr]' value='$option2'>$option2<BR>";
        } else {
            echo '';
        }
    } else {
        if($option1!="") {
            echo "<input type='checkbox' name='question[$q_nr]' value='$option1'>$option1<BR>";
        } else {
            echo '';
        } 
        if($option2!="") {
            echo "<input type='checkbox' name='question[$q_nr]' value='$option2'>$option2<BR>";
        } else {
            echo '';
        } 
    }

    echo "<BR>";
    echo "<BR>";
    echo "</p>";
}
echo "<input type='submit' value='Send Form'>";
echo "</form>";

answer.php

<?php
//Key is $q_nr and $answer is selected $option
foreach($_POST['question'] as $key => $answer) {
    echo $key;
    echo $answer;
}
?>

您需要在復選框中使用不同的name值。

例如name='question1[$q_nr]'name='question2[$q_nr]' 相同的名稱僅適用於單選按鈕所在的分組元素。

或者將它們作為數組傳遞:

name='question[$q_nr][1]'name='question[$q_nr][2]'

您可以將其用作名稱:

name="question[$q_nr][]"

這將確保您返回一個包含所選復選框的所有值的數組。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM