2014-09-01 7 views
3

test.phpPHP - кнопка радио без кнопки отправки

<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']) -> получаю ошибку (не определен индекс: имя)
(2) if($_POST['submit']) -> получить ошибки (не определен индекс: отправить)
(3) if(isset($_POST['name']) -> нет ошибки , но ничего не произошло

Как его решить?

ответ

0

Вы назначили радиокнопку q1 и q2, но пытается получить к ней доступ с именем 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" /> 
+0

Thanks Jenz. Я, наконец, понимаю это. Используйте значение радиокнопки, а не имя переключателя. – user3905044

+0

нет стоимость.Используйте имя входных элементов во время отправки формы. – Jenz

0

Вы пробовали это?

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

нет имени при подаче! – user2068793

+0

dem downvotez почти на все ответы на этот пост, lol. –

+0

@Alex Ответы на вопросы низкого качества получат больше downvotes, и больше, если вы даже не потрудитесь что-либо объяснить – Sugar

2

Вы должны установить имя:

<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']; 
    } 
+0

Спасибо, один человек экипаж. – user3905044

0

если ($ _ POST [ 'имя'])

к

if($_POST['q1']) { 

} 

if($_POST['q2']) { 

} 

если (Исеть ($ _ POST [ 'имя'])

к

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

И,

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