我想創建一個批量刪除按鈕。我正在嘗試創建一個輸入字段,其中管理員可以指定他/她想要刪除的行數。從SQL數據庫刪除特定數量的行
到目前爲止,我使用下面的代碼,試圖刪除輸入字段中指定的金額,但什麼也沒發生,並有在錯誤日誌中沒有任何錯誤:
helper.php
function deleteall($all) {
$db = JFactory::getDBO();
$query = $db->getQuery(true);
$query->delete()
->from('#__shoutbox');
$db->setQuery($query, 0, $all);
$db->query();
}
mod_shoutbox.php
if(isset($post['deleteall'])) {
$all = $post['all'];
modShoutboxHelper::deleteall($all);
}
如default.php
<form method="post" name="deleteall">
<input name="all" type="text" value="" />
<input name="deleteall" type="submit" value="mass delete" />
</form>
我相信SQL查詢是很好,這個問題是在如default.php的HTML,但不是100%肯定的事。有人可以讓我知道我要去哪裏嗎?
更新:
$post
,因爲我使用Joomla編碼標準已經確定。
我不知道Joomla,但不應$ post是$ _POST? –
當你調用函數deleteall'時,'$ all'的類型和值是什麼,你期望'$ db-> setQuery($ query,0,$ all);'do? - 您要查找的SQL關鍵字可能是「LIMIT」條款。 - 它屬於SQL,不屬於返回的行數。 – hakre
不知道你在這個PHP代碼中做了什麼,但是你可以在SQL中使用'LIMIT'來限制要刪除的記錄:'從表格限制100中刪除' –