2012-02-19 24 views
0

我有一個PHP頁面,其上有幾個HTML問題,每個問題都有一個「類型」,並且您在1的範圍內回答該問題-5,在下面的例子中將會有3個問題類型:A,B,& C.如何爲每個問題「類型」添加總分數(分數從每個以下的1-5個單選按鈕問題),然後將這些總分數存儲爲PHP變量?各類問題的單選按鈕評分系統,在末尾添加分數

這裏是HTML代碼,我沒有CLUE從哪裏開始,但我需要做這件事,我們很快就要做一個學校活動,我不想讓他們失望:)哈哈!感謝所有幫助人員,抱歉,我對HTML表單知之甚少!不管怎麼說,這裏的HTML代碼時,PHP可以去任何地方,我沒有寫它尚未/:哈哈:

Type A rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type B rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type A rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type C rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type A rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type B rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 
Type B rating: 
<br> 
<form action="" method="post"> 
1 
<input type="radio" name="select" value="1"> 
<input type="radio" name="select" value="2"> 
<input type="radio" name="select" value="3"> 
<input type="radio" name="select" value="4"> 
<input type="radio" name="select" value="5"> 
5 
</form> 
<br><br> 

<input type="submit" name="Sum The Ratings" value="Vote"> 
+0

要理解你的問題爲什麼關閉,請閱讀[faq]和[ask] – 2012-02-20 06:11:38

回答

2

在這一切的問題,創建一個大單,那麼對於每個問題,設置的名稱每個問題的輸入都有一個不同的關鍵字。當你將把您的形式,你會得到與$ _ POST [「名」]選擇的值,只要加入他們,並配給或wathever你wan't

<?php 
$name_cat_a = "A_"; 
$name_cat_b = "B_"; 
$cat_a_quest = array("Question A1", "Question A2"); 
$cat_b_quest = array("Question B1", "Question B2"); 
if(!isset($_POST[submit])){ 
echo '<form action="test.php" method=post>'; 
echo 'Type A rating:'; 
echo '<br />'; 
$ind = 0; 
foreach($cat_a_quest as $question){ 
    echo $question; 
    echo '<br>'; 
    $name = $name_cat_a . $ind; 
    $ind ++; 
    for($i=0;$i<5;$i++){ 
    echo '<input type="radio" name="'.$name.'" value="'.($i+1).'" />'.($i+1) ; 
    } 
    echo '<br />'; 
} 
echo 'Type B rating:'; 
echo '<br />'; 
$ind = 0; 
foreach($cat_b_quest as $question){ 
    echo $question; 
    echo '<br>'; 
    $name = $name_cat_b . $ind; 
    $ind ++; 
    for($i=0;$i<5;$i++){ 
    echo '<input type="radio" name="'.$name.'" value="'.($i+1).'" />'.($i+1); 
    } 
    echo '<br />'; 
} 
echo '<input type="hidden" name="submit" value="1" />'; 
echo '<input type="submit" name="Sum The Ratings" value="Vote">'; 
echo '</form>'; 
} 
else{ 
$moyen_a = 0; 
$moyen_b = 0; 
$nmb_ques_a = count($cat_a_quest); 
$nmb_ques_b = count($cat_b_quest); 
for($i=0; $i<$nmb_ques_a; $i++){ 
    $moyen_a = $moyen_a + intval($_POST['A_'.$i]); 
} 
$moyen_a = $moyen_a/$nmb_ques_a; 
for($i=0; $i<$nmb_ques_b; $i++){ 
    $moyen_b = $moyen_b + intval($_POST['B_'.$i]); 
} 
$moyen_b = $moyen_b/$nmb_ques_b; 


echo 'A:'.$moyen_a.'<br />'; 
echo 'B:'.$moyen_b.'<br />'; 
} 
?> 

在那裏,我已經明確地命名cat_a和cat_b但你可以把你所有的貓都放入一個數組中,然後循環進入它,在這個循環中,你循環處理問題,然後循環5個答案

+0

每次我嘗試它的值爲/時返回0:是不是這個代碼也只是平均得分?我需要所有A型問題的總和以及所有B型問題的總和等等,將會出現多個A型問題等。 – 2012-02-19 04:02:09

+0

Nevermind我輸入了一些錯誤,它不僅僅是返回零,您的代碼工作正常但它仍然不是我想要的。我可以手動命名每個問題並添加所有的值,但問題是在所有哈哈有大約95個問題。最糟糕的情況下,我需要大約30分鐘才能做到這一點,但我想知道是否有更快的方法? – 2012-02-19 04:06:49

+0

我只是編輯了代碼,但是你可以從數據庫中取出問題並不重要,根據查詢的數量創建循環 – lpostula 2012-02-19 04:17:47