2017-04-26 46 views
1

我有一个带分组单选按钮的html表单。这种形式包含有任何疑问或任何选项用PHP计算html单选按钮值

<form action="results.php" method="post" enctype="multipart/form-data"><br> 
      <p>Have you ever turned a client down?</p> 
      <div id="q_1"> 
       <input type="radio" name="q[]" id="q_1_yes" value="yes"> 
       <label for="q_1_yes">Yes</label> 
       <input type="radio" name="q[]" id="q_1_no" value="no"> 
       <label for="q_1_no">No</label> 
      </div><br> 
      <p>Are you comfortable with failure?</p> 
      <div id="q_1"> 
       <input type="radio" name="q[]" id="q_2_yes" value="yes"> 
       <label for="q_2_yes">Yes</label> 
       <input type="radio" name="q[]" id="q_2_no" value="no"> 
       <label for="q_2_no">No</label> 
      </div><br> 
      <p>Can your concept be easily described and understood?</p> 
      <div id="q_1"> 
       <input type="radio" name="q[]" id="q_3_yes" value="yes"> 
       <label for="q_3_yes">Yes</label> 
       <input type="radio" name="q[]" id="q_3_no" value="no"> 
       <label for="q_3_no">No</label> 
      </div><br> 
        <input type="submit" name="sub_eit" id="sub_eit" value="Submit"> 
       </div> 
      </form> 

我知道我可以指望的单选按钮的数量与名称q

$count_cbox = count($_POST['q']) 

但有可能的是,当用户进行选择,我算单选按钮值=“是”或“否”。

+0

遍历'$ _POST'并计算发现'yes'的频率,然后使用'switch(yesCount){case 1:/ *任何代码*/break;情况2:/ *任何代码*/break;}' –

+0

您可以使用某些count变量或将结果存储在数组中。 –

+0

顺便说一句'推荐'而不是'推荐' –

回答

0

请稍微改变您的单选按钮名称。否则,分组不起作用:

<form method="post" enctype="multipart/form-data"><br> 
<p>Have you ever turned a client down?</p> 
<div id="q_1"> 
    <input type="radio" name="q[0]" id="q_1_yes" value="yes"> 
    <label for="q_1_yes">Yes</label> 
    <input type="radio" name="q[0]" id="q_1_no" value="no"> 
    <label for="q_1_no">No</label> 
</div><br> 
<p>Are you comfortable with failure?</p> 
<div id="q_1"> 
    <input type="radio" name="q[1]" id="q_2_yes" value="yes"> 
    <label for="q_2_yes">Yes</label> 
    <input type="radio" name="q[1]" id="q_2_no" value="no"> 
    <label for="q_2_no">No</label> 
</div><br> 
<p>Can your concept be easily described and understood?</p> 
<div id="q_1"> 
    <input type="radio" name="q[2]" id="q_3_yes" value="yes"> 
    <label for="q_3_yes">Yes</label> 
    <input type="radio" name="q[2]" id="q_3_no" value="no"> 
    <label for="q_3_no">No</label> 
</div><br> 
<input type="submit" name="sub_eit" id="sub_eit" value="Submit"> 
</div> 
</form> 

的PHP代码:

for($i = 0; $i < count($_POST['q']); ++$i) { 
    if($_POST['q'][$i] == 'yes') { 
     ++$yes; 
    } 
} 

现在$是包含单选按钮的数量与价值肯定。在这种情况下0-3。请注意,如果没有选择单选按钮,它将返回NULL,而不是0.

+0

非常感谢@kapparina,但我要检查用户选择的确切数量的“是”吗? – WhiteHox

+0

你有3个收音机组,每个收音机有yes和no。所以如果所有3个问题的答案都是肯定或更少,那么$ yes包含3。 或NULL,如果所有问题的答案都是否定的。 这是回答您的问题吗? :) – Kapparina

+0

我试着用'if($ yes <2){执行一段代码}来编写语句''但是这不起作用。 – WhiteHox