[英](PHP) How do i refer a specific array value in a checkbox?
如何引用復選框數組中的特定值? 我正在嘗試創建一個網頁,當用戶單擊一個或多個復選框時顯示回顯消息。
例子 :
網頁
[ ] 鋼筆
[x] 鉛筆
[x] 橡皮擦
[ ] 標尺
[提交按鈕]
輸出 :
所以這就是我想出的:
HTML
<form action="email.php" method="post">
<input type="checkbox" name="options[]" value="pen"> pen <br>
<input type="checkbox" name="options[]" value="pencil"> pencil <br>
<input type="checkbox" name="options[]" value="eraser"> eraser <br>
<input type="checkbox" name="options[]" value="ruler"> ruler <br>
<input type="submit" name="submit" value="submit"> <br>
</form>
PHP
<?php
$need = $_POST['options'];
if(isset($_POST['submit'])){
if(!empty($_POST['options'])){
if($need == "pen"){
echo "you need pen ";
}
elseif($need == "pencil"){
echo "you need pencil";
}
elseif($need == "eraser"){
echo "you need eraser";
}
elseif($need == "ruler"){
echo "you picked ruler";
}
else{
echo "you must pick atleast one";
}
}
}
?>
根據我的代碼,我哪里出錯了? 有沒有更好的方法來做到這一點?
我還是 php 和 stackoverflow 的新手,所以為我的錯誤道歉。
您在 PHP 中所做的代碼的問題在於$_POST['options']
將是一個數組類型。 所以為了使這項工作的代碼應該是
<?php
if(isset($_POST['submit'])){
$need = $_POST['options'];
if(!empty($need)){
foreach($need as $n){
if($n == "pen"){
echo "you need pen ";
}
if($n == "pencil"){
echo "you need pencil";
}
if($n == "eraser"){
echo "you need eraser";
}
if($n == "ruler"){
echo "you picked ruler";
}
}
}
else{
echo "you must pick atleast one";
}
}
?>
試試這個,這應該有效。
請注意,我還將 elseif 更改為 if 以獲取所有選定的選項
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.