簡體   English   中英

PHP發布復選框問題

[英]PHP post checkbox problem

我有一個利用復選框的表格。

<input type="checkbox" name="check[]" value="notsure"> Not Sure, Please help me determine <br /> <input type="checkbox" name="check[]" value="keyboard"> Keyboard <br /> <input type="checkbox" name="check[]" value="touchscreen"> Touch Screen Monitors <br /> <input type="checkbox" name="check[]" value="scales">Scales <br /> <input type="checkbox" name="check[]" value="wireless">Wireless Devices <br />

這是在外部php文件中處理此表單的代碼。

$addequip = implode(', ', $_POST['check']);

我一直在下面收到此錯誤;


<b>Warning</b>:  implode() [<a href='function.implode'>function.implode</a>]: Invalid arguments passed in <b>.../process.php</b> on line <b>53</b><br />
OK

您的復選框是否已打勾? php的$_POST數組將僅具有已被選中的復選框

要使警告靜音,請使用以下命令:

$addequip = implode(', ', empty($_POST['check']) ? array() : $_POST['check'] );

嗨,我是發布此問題的原始用戶,我無法登錄到我的帳戶,因此是從另一個帳戶發布的。 經過幾個小時的嘗試,我以某種方式設法使其部分工作。 以下是修改后的表單html和復選框的處理代碼

<input type="checkbox" name="check" value="Touchscreen"> Touchscreen<br>
<input type="checkbox" name="check" value="Keyboard"> Keyboard<br>
<input type="checkbox" name="check" value="Scales"> Scales<br>

我必須刪除[]才能起作用。 下面也是那些想看的人的完整post方法。 它在所有其他領域都可以正常工作。

<form id="contact_form" action="process.php" method="POST" onSubmit="return processForm()">

下面是處理復選框的php代碼。 由於某種原因,我不得不告訴腳本$ _POST ['check']是一個數組,沒有它只會返回數組。 建議的所有其他方法返回無效的參數傳遞的錯誤。

$chckbox = array($_POST['check']);
                if(is_array($chckbox))
                {
                  foreach($chckbox as $addequip) {
                  $chckbox .="$addequip\n";
                  }
                }

因此,此代碼有效,但無論您打勾了多少,都僅返回1個被打勾的復選框值。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM