0

次のコードでPHPラジオボタンが生成されています。

while($a_row = mysql_fetch_array($answers_result))
    {
        // print each answer choice
        ?>
        <input type='radio' name='question_<?php echo $current_question['id'] ?>'                     
                value='<?php echo $a_row['prompt']?>'><?php echo $a_row['prompt']?>
        <br />

    <?php
    }

次に、次のコードを使用してユーザーの選択を定義します。

$user_answer = $_POST["question_{$_SESSION['current_question']['id']}"];

ただし、これは常に値を返すとは限りません。これは、$ a_row ['prompt']が何であってもかまいません。リストの最初のラジオボタンの場合は、「回答1」などを返します。取得していません。私のsqlテーブルからの正しい値。ユーザーがボタンを選択してフォームを送信したときに、各ラジオボタンの「値」が実際に取得されない原因となっているコードに何か問題がありますか?

4

1 に答える 1

0

' ' をエスケープする必要があります。

<input type='radio' name='question_<?php echo $current_question[\'id\']; ?>'                     
            value='<?php echo $a_row[\'prompt\'];?>'><?php echo $a_row['prompt'];?>

また、PHP コマンドを ; で終了する必要があることにも注意してください。そうではありません。

' ' トラブルを回避するために、コードに ' ' を追加する必要があることがわかっている場合は、" " を使用することをお勧めします。

<input type='radio' name="question_<?php echo $current_question['id']; ?>"                     
            value="<?php echo $a_row['prompt'];?>"><?php echo $a_row['prompt'];?>
于 2012-09-13T00:43:28.747 に答える