我正在爲一個網站製作一個聯繫頁面,並且所有的表單字段都粘在了下拉菜單的例外之外?我已經完成了代碼,就像我知道如何做到的,但對於PHP來說很新,並且不知道問題出在哪裏?代碼如下:粘滯菜單不粘?
<?php
$WebSearch = $SocialMedia = $WordOfMouth = $Other ="";
if ($_SERVER["REQUEST_METHOD"] == "POST")
{
//Question
if (empty($_POST["question"]))
{$comment = "";}
else
{$comment = test_input($_POST["question"]);}
//WebSearch
if (empty($_POST["WebSearch"]))
{$comment = "";}
else
{$comment = test_input($_POST["WebSearch"]);}
//SocialMedia
if (empty($_POST["SocialMedia"]))
{$comment = "";}
else
{$comment = test_input($_POST["SocialMedia"]);}
//WordOfMouth
if (empty($_POST["WordOfMouth"]))
{$comment = "";}
else
{$comment = test_input($_POST["WordOfMouth"]);}
//Other
if (empty($_POST["Other"]))
{$comment = "";}
else
{$comment = test_input($_POST["Other"]);}
}
function test_input($data)
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>
<form method="post" id="form" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">
<p id="info-req">How did you find about This site?</p>
<!--Question--><select id="marketing" name="question">
<option value="----------" style="color:black">----------</option>
<option value="Web Search" style="color:black" name="WebSearch">Google Search</option><?php if(isset($_POST['WebSearch'])) {echo $_POST['WebSearch']; } ?>
<option value="Social Media" style="color:black" name="SocialMedia">Social Media</option><?php if(isset($_POST['SocialMedia'])) {echo $_POST['SocialMedia']; } ?>
<option value="Word of mouth" style="color:black"name="WordOfMouth">Word of mouth</option><?php if(isset($_POST['WordOfMouth'])) {echo $_POST['WordOfMouth']; } ?>
<option value="Other" style="color:black" name="Other">Other</option><?php if(isset($_POST['Other'])) {echo $_POST['Other']; } ?>
</select>
<div>
<input type="submit" value="Send" id="submit">
</div>
</form>
我希望這是一個簡單的修復或我錯過了什麼?學習了幾個月後,我正在努力學習php。
非常感謝您的幫助,
馬蓋特
您需要檢查需要選擇哪個選項,然後將選擇的屬性添加到該標籤的
嗯...你的意思是「表單字段粘在一起,除了下拉菜單」。這是一個設計問題還是你有一些值沒有顯示出來的問題? –
我在頁面上有其他的表單字段,並且當存在表單錯誤時,所有內容都會粘住。不粘的是下拉菜單。我沒有將其餘的代碼添加到我上面發佈的代碼中,因爲它工作正常。所有其他條目都顯示錯誤並堅持原樣。 – Margate