PHP - 没有提交按钮的单选按钮

时间:2014-09-01 09:15:52

标签: php html

test.php的

<form action="test2.php" method="post">
Q1: <br />
<input type="radio" name="q1" value="true" />T<br />(Correct Answer)
<input type="radio" name="q1" value="false" />F<br />

Q2: <br />
<input type="radio" name="q2" value="true" />T<br />
<input type="radio" name="q2" value="false" />F<br />(Correct Answer)

<input type="submit" value="Score" />
</form>

test2.php

<?php
     //process code from test.php
?> 

我想从每个问题中获取单选按钮的值,并检查是真还是假。我在test2.php中尝试这个:
(1)if($_POST['name']) - &gt;得到错误(未定义索引:名称)
(2)if($_POST['submit']) - &gt;得到错误(未定义索引:提交)
(3)if(isset($_POST['name']) - &gt;没有错误,但没有发生任何事情

我该如何解决?

4 个答案:

答案 0 :(得分:1)

您已将单选按钮命名为q1q2,但尝试使用名称name进行访问。而不是if($_POST['name'])你需要做的事情

if($_POST['q1'])

if($_POST['q2'])

另外,为了检查表单是否已提交,您可以尝试使用此代码。

if(isset($_POST)) 

如果您使用if($_POST['submit'])检查表单是否已提交,submit将是提交按钮的名称。因此,您必须将name属性设置为提交按钮。

<input name="submit"  type="submit" value="Score" />

答案 1 :(得分:1)

你试过这个吗?

$_POST['q1'];
$_POST['q2'];

答案 2 :(得分:1)

您需要设置名称

<input name="submit"  type="submit" value="Score" />

并获得如下值:

$_POST['q1'];
$_POST['q2'];

名称属性是您在POST/GET中发送到php脚本的内容。

if(isset($_POST['submit']))//don't forget to check using isset()
   {
    /*other variables*/
    $radio_value1 = $_POST['q1'];
    $radio_value2 = $_POST['q2'];
   }

答案 3 :(得分:0)

如果($ _ POST [ '名称'])

if($_POST['q1']) {

}

if($_POST['q2']) {

}

如果(isset($ _ POST [ '名称'])

if(isset($_POST['q1']) 
if(isset($_POST['q2'])

<input type="submit" value="Score" /> to <input type="submit" name="submit" value="Score" />