2012-07-14 35 views
-1

如何获取数组格式的无线组值?这是我的发件人(game.php)和接收器(result.php)如何发布和获得无线电组数组?

我想用数据库中正确的答案检查无线电组元素(是或否),并在正确答案时增加该点。

game.php:

$conn= mysql_connect($servername,$username, $password)or die(mysql_error()); 
    mysql_select_db($database,$conn); 

    $sql = "SELECT * from questions"; 
    $result=mysql_query($sql); 
    $num=mysql_numrows($result); 

    $i=0; 
    echo("<FORM ACTION='./result.php' METHOD=GET>"); 
    while($i < $num){ 
     $field = array($i => mysql_result($result,$i,"question")); 
     $j = $i + 1; 
     echo "<b>[$j] </b>$field[$i]<br>"; 
     echo ("<label> 
     <input type='radio' name='radioGroup[$i]' value='yes' id='radioGroup_1'> 
     Yes</label><label> 
     <input type='radio' name='radioGroup[$i]' value='no' id='radioGroup_1'> 
     No</label><br>"); 
    $i++; 
    } 

    echo "<input type='submit'>"; 
    echo("</FORM>"); 
    echo("<br>"); 

result.php:

$conn= mysql_connect($servername,$username, $password)or die(mysql_error()); 
    mysql_select_db($database,$conn); 

    $sqlcode = "SELECT * FROM questions"; 
    $cal=mysql_query($sqlcode); 
    $num = mysql_numrows($cal); 
    $m=0; 

    while ($m < $num){ 
     $user_answer = array($m => $_GET["radioGroup"]);  
     $m++; 
    } 



    $k = 0; 
    $point = 0; 
    $sql = "SELECT * from questions"; 
    $result=mysql_query($sql); 
    while($k < $num){ 
     $answer = array($k => mysql_result($result,$k,"answer")); 

     if ($answer[$k] == $user_answer[$k]){ 
      $point++ ; 
     } 

     echo "puan:"; 
     echo $point; 
     $k++; 
    } 
+0

是不一样的问题[这里](http://stackoverflow.com/ question/11485682/radio-group-information-added-to-array)? – j0k 2012-07-14 18:03:47

+0

我删除了它。 – Yagiz 2012-07-14 18:06:46

+0

只是一个提示:避免HTML回声最多。 – rcdmk 2012-07-14 18:22:20

回答

4

你不明白你怎么收到表单值。

在您的代码(result.php)中,$_GET["radioGroup"]是一个包含所有答案的数组。

试试这个简单的脚本来理解它是如何工作的:

<form> 
    <input type='radio' name='radioGroup[1]' value='yes' checked="checked" /> 
    <input type='radio' name='radioGroup[1]' value='no' /> 
    <br/> 
    <input type='radio' name='radioGroup[2]' value='yes' /> 
    <input type='radio' name='radioGroup[2]' value='no' checked="checked" /> 
    <br/> 
    <input type='submit' name='submit' value='true' /> 
</form> 

<pre> 
<?php 

    if(isset($_GET['submit'])) 
    { 
     print_r($_GET); 
    } 

和输出是这样的:

Array 
(
    [radioGroup] => Array 
     (
      [1] => yes 
      [2] => no 
     ) 

    [submit] => true 
) 
+0

我仍然不明白如何从game.php获取结果? – Yagiz 2012-07-15 13:01:41