我目前正在爲我的網站製作一個消息傳遞系統,該系統允許人們向其他9個人(包括作者)發送消息。我有我的數據庫稱爲 '會話' 具有以下字段的表:計數數組值返回額外結果
- convo_id
- 作者
- recipient_1
- recipient_2
- recipient_3
- recipient_4
- recipient_5
- recipient_6
- recipient_7
- recipient_8
- recipient_9
- 標題
- 時間戳
然後我有一個叫做 'private_messages' 這些領域的表:
- MESSAGE_ID
- convo_id
- 作者
- 時間戳
- 消息
所以在會話中的所有參與者都存儲在談話表,並存儲在p_m表中的實際消息。
我使用的是單一的輸入字段的形式爲受助上,用逗號分隔的名字,然後對另一側下面的代碼提交:
$recipients = explode(",", $_POST['recipient']);
$duplicate = array($recipients[0],$recipients[1],$recipients[2],$recipients[3],$recipients[4],$recipients[5],$recipients[6],$recipients[7],$recipients[8],$recipients[9],$recipients[10]);
$unique = array_values(array_unique($duplicate));
$result = count($unique);
echo "$result<br>";
的問題,我有,當我回應$結果時,我得到一個額外的計數。如果我將該字段留空,則它正確地表示爲0,但是任何條目都會返回2,這會在驗證後進一步發生異常。
我完全難住,任何幫助將不勝感激!
您是否嘗試過error_log'ing的$ _ POST [ '接受者']?也許你會將作者添加到收件人列表中。 –
是的,$ _POST ['recipient']只返回輸入的值。 – user3461991
嗯,你添加11個收件人的數組...索引0到10.爲什麼你甚至做手動數組的東西? –