2013-02-19 87 views
2

我對PHP相當陌生,目前正在進行調查。用戶在單選按鈕上的表單中選擇問題的答案。每個問題有4種可能性,並在每個問題下分組。提交表單時,頁面應顯示每個組的哪個按鈕被選中。目前的代碼是這樣的:顯示在提交表單後選擇了哪個單選按鈕

<form action="thankyou.php" method="post"> 
    <p>How easy would you say it is to create new carers?</p> 
    <input type="radio" name="rgroup1" value="rg1v1"> Excellent 
    <input type="radio" name="rgroup1" value="rg1v2"> Good 
    <input type="radio" name="rgroup1" value="rg1v3"> Average 
    <input type="radio" name="rgroup1" value="rg1v4"> Poor</br> 

    <p>How easy is it to generate a report?</p> 
    <input type="radio" name="rgroup2" value="rg2v1"> Excellent 
    <input type="radio" name="rgroup2" value="rg2v2"> Good 
    <input type="radio" name="rgroup2" value="rg2v3"> Average 
    <input type="radio" name="rgroup2" value="rg2v4"> Poor</br> 

    <p>How easy is it to add and alter timesheets?</p> 
    <input type="radio" name="rgroup3" value="excellent"> Excellent 
    <input type="radio" name="rgroup3" value="good"> Good 
    <input type="radio" name="rgroup3" value="average"> Average 
    <input type="radio" name="rgroup3" value="poor"> Poor</br> 

    <p>How good would you rate the Packages Of Care functions? </p> 
    <input type="radio" name="rgroup4" value="excellent"> Excellent 
    <input type="radio" name="rgroup4" value="good"> Good 
    <input type="radio" name="rgroup4" value="average"> Average 
    <input type="radio" name="rgroup4" value="poor"> Poor</br> 

    <p>Question 5</p> 
    <input type="radio" name="rgroup5" value="excellent"> Excellent 
    <input type="radio" name="rgroup5" value="good"> Good 
    <input type="radio" name="rgroup5" value="average"> Average 
    <input type="radio" name="rgroup5" value="poor"> Poor</br> 
    </br> 
     Please Enter Your Comments Below: 
    </br></br> 
     <textarea name="comments" width="100px" rows="4" cols="50" wrap="wrap"></textarea> 
    </br></br> 
     <input type="submit"> 
    <br/><br/> 
</form> 

和我的PHP爲「thankyou.php」頁面:

<?php 

switch($_POST['rgroup1']) { 
    case "rg1v1": 
     $value = "Radio Group 1 - Value 1 was selected."; 
     break; 
    case "rg1v2": 
     $value = "Radio Group 1 - Value 2 was selected."; 
     break; 
    case "rg1v3": 
     $value = "Radio Group 1 - Value 3 was selected."; 
     break; 
    case "rg1v4": 
     $value = "Radio Group 1 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 1"; 
} 

switch($_POST['rgroup2']) { 
    case "rg2v1": 
     $value2 = "Radio Group 2 - Value 1 was selected."; 
     break; 
    case "rg2v2": 
     $value2 = "Radio Group 2 - Value 2 was selected."; 
     break; 
    case "rg2v3": 
     $value2 = "Radio Group 2 - Value 3 was selected."; 
     break; 
    case "rg2v4": 
     $value2 = "Radio Group 2 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 2"; 
} 

switch($_POST['rgroup3']) { 
    case "rg3v1": 
     $value3 = "Radio Group 3 - Value 1 was selected."; 
     break; 
    case "rg3v2": 
     $value3 = "Radio Group 3 - Value 2 was selected."; 
     break; 
    case "rg3v3": 
     $value3 = "Radio Group 3 - Value 3 was selected."; 
     break; 
    case "rg3v4": 
     $value3 = "Radio Group 3 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 3"; 
} 

switch($_POST['rgroup4']) { 
    case "rg4v1": 
     $value4 = "Radio Group 4 - Value 1 was selected."; 
     break; 
    case "rg4v2": 
     $value4 = "Radio Group 4 - Value 2 was selected."; 
     break; 
    case "rg4v3": 
     $value4 = "Radio Group 4 - Value 3 was selected."; 
     break; 
    case "rg4v4": 
     $value4 = "Radio Group 4 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 4"; 
} 

switch($_POST['rgroup5']) { 
    case "rg5v1": 
     $value5 = "Radio Group 5 - Value 1 was selected."; 
     break; 
    case "rg5v2": 
     $value5 = "Radio Group 5 - Value 2 was selected."; 
     break; 
    case "rg5v3": 
     $value5 = "Radio Group 5 - Value 3 was selected."; 
     break; 
    case "rg5v4": 
     $value5 = "Radio Group 5 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 5"; 
} 


echo $value; 
echo $value2; 
echo $value3; 
echo $value4; 
echo $value5; 

?> 

我得到一個錯誤,說我沒有定義值2變量, 3,4和5,我不知道爲什麼。

+1

請複製粘貼確切的錯誤,你有。我沒有正確地得到你。 – 2013-02-19 12:29:39

+0

注意:Undefined變量:value3在C:\ wamp \ www \ thankyou.php在第106行 與2和4和5的值相同 – RossDoughty 2013-02-19 12:30:33

+0

@RossDoughty:一個建議,如果您的所有單選按鈕組值都相同不要重複開關,而是使用循環。如果你想顯示在謝謝你的頁面中選中的單選按鈕,只需在單選按鈕內部進行回聲檢查。並且將值存入單選按鈕組 – zamil 2013-02-19 12:33:28

回答

2

對於3,4和5 radio截面值是優秀的,良好的,平均的,差的和不工作的。 'rg3v1','rg3v2','rg3v3'和'rg3v4'。因此,當執行進入下面的代碼,

switch($_POST['rgroup3']) { 
    case "rg3v1": 
     $value3 = "Radio Group 3 - Value 1 was selected."; 
     break; 
    case "rg3v2": 
     $value3 = "Radio Group 3 - Value 2 was selected."; 
     break; 
    case "rg3v3": 
     $value3 = "Radio Group 3 - Value 3 was selected."; 
     break; 
    case "rg3v4": 
     $value3 = "Radio Group 3 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 3"; 
} 

switch($_POST['rgroup4']) { 
    case "rg4v1": 
     $value4 = "Radio Group 4 - Value 1 was selected."; 
     break; 
    case "rg4v2": 
     $value4 = "Radio Group 4 - Value 2 was selected."; 
     break; 
    case "rg4v3": 
     $value4 = "Radio Group 4 - Value 3 was selected."; 
     break; 
    case "rg4v4": 
     $value4 = "Radio Group 4 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 4"; 
} 

switch($_POST['rgroup5']) { 
    case "rg5v1": 
     $value5 = "Radio Group 5 - Value 1 was selected."; 
     break; 
    case "rg5v2": 
     $value5 = "Radio Group 5 - Value 2 was selected."; 
     break; 
    case "rg5v3": 
     $value5 = "Radio Group 5 - Value 3 was selected."; 
     break; 
    case "rg5v4": 
     $value5 = "Radio Group 5 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 5"; 
} 

它沒有分配任何東西,並顯示一個錯誤,當您嘗試打印以下變量,用於開關的情況下命名

echo $value3; 
echo $value4; 
echo $value5; 
+0

謝謝你的一個很好的答案和例子!修正它吧! – RossDoughty 2013-02-19 12:40:35

2

對於rgroups 3,4和5,您的值的格式不是rgroup1和rgroup2。你已經把你的價值看作是優秀,優秀等與你的交換機案例不匹配的字符串。

+0

謝謝,我覺得很愚蠢現在:/。我看不到在我面前的是什麼! – RossDoughty 2013-02-19 12:34:32

+0

發生在我們身上:) – priyolahiri 2013-02-19 12:55:02

0

所有默認變量相同。所以如果沒有選項被選中php使用值變量。相應地更改其他默認值即可。

<?php 

switch($_POST['rgroup1']) { 
    case "rg1v1": 
     $value = "Radio Group 1 - Value 1 was selected."; 
     break; 
    case "rg1v2": 
     $value = "Radio Group 1 - Value 2 was selected."; 
     break;`enter code here` 
    case "rg1v3": 
     $value = "Radio Group 1 - Value 3 was selected."; 
     break; 
    case "rg1v4": 
     $value = "Radio Group 1 - Value 4 was selected."; 
     break; 

     default: 
     $value = "No radio has been selected for Radio Group 1"; 
} 

switch($_POST['rgroup2']) { 
    case "rg2v1": 
     $value2 = "Radio Group 2 - Value 1 was selected."; 
     break; 
    case "rg2v2": 
     $value2 = "Radio Group 2 - Value 2 was selected."; 
     break; 
    case "rg2v3": 
     $value2 = "Radio Group 2 - Value 3 was selected."; 
     break; 
    case "rg2v4": 
     $value2 = "Radio Group 2 - Value 4 was selected."; 
     break; 

     default: 
     $value2 = "No radio has been selected for Radio Group 2"; 
} 

switch($_POST['rgroup3']) { 
    case "rg3v1": 
     $value3 = "Radio Group 3 - Value 1 was selected."; 
     break; 
    case "rg3v2": 
     $value3 = "Radio Group 3 - Value 2 was selected."; 
     break; 
    case "rg3v3": 
     $value3 = "Radio Group 3 - Value 3 was selected."; 
     break; 
    case "rg3v4": 
     $value3 = "Radio Group 3 - Value 4 was selected."; 
     break; 

     default: 
     $value3 = "No radio has been selected for Radio Group 3"; 
} 

switch($_POST['rgroup4']) { 
    case "rg4v1": 
     $value4 = "Radio Group 4 - Value 1 was selected."; 
     break; 
    case "rg4v2": 
     $value4 = "Radio Group 4 - Value 2 was selected."; 
     break; 
    case "rg4v3": 
     $value4 = "Radio Group 4 - Value 3 was selected."; 
     break; 
    case "rg4v4": 
     $value4 = "Radio Group 4 - Value 4 was selected."; 
     break; 

     default: 
     $value4 = "No radio has been selected for Radio Group 4"; 
} 

switch($_POST['rgroup5']) { 
    case "rg5v1": 
     $value5 = "Radio Group 5 - Value 1 was selected."; 
     break; 
    case "rg5v2": 
     $value5 = "Radio Group 5 - Value 2 was selected."; 
     break; 
    case "rg5v3": 
     $value5 = "Radio Group 5 - Value 3 was selected."; 
     break; 
    case "rg5v4": 
     $value5 = "Radio Group 5 - Value 4 was selected."; 
     break; 

     default: 
     $value5 = "No radio has been selected for Radio Group 5"; 
} 


echo $value; 
echo $value2; 
echo $value3; 
echo $value4; 
echo $value5; 

?> 
相關問題