\n \n \n <\/td>\n <\/tr>\n <\/table>\n <\/form>\n <\/td>\n <\/tr>\n <\/table> \n ';\n }\n }\n mysqli_close($dbc);\n ?>\n <\/body>\n<\/html><\/code><\/pre>\n 修正:<\/strong><\/p>\n\n- 將複選框名稱視為陣列:name=\"checkbox []\" 而不是name=\"checkbox\"。 <\/li>\n
- 將 $dbc 資料庫(kù)連接傳遞給每個(gè) mysqli_query 調(diào)用,如 $result = mysqli_query($dbc, $sql); 所示。 <\/li>\n<\/ol>
透過(guò)這些修改,程式碼應(yīng)該根據(jù)所選的複選框正確刪除多行。 <\/p>"}
首頁(yè)
後端開(kāi)發(fā)
php教程
如何在 PHP 中使用複選框刪除多行:解決常見(jiàn)錯(cuò)誤並確保成功執(zhí)行?
如何在 PHP 中使用複選框刪除多行:解決常見(jiàn)錯(cuò)誤並確保成功執(zhí)行?
Oct 26, 2024 am 04:00 AM

使用PHP 透過(guò)選擇複選框刪除多行:常見(jiàn)錯(cuò)誤故障排除
使用PHP 從MySQL 資料庫(kù)表中刪除多行時(shí),使用複選框選擇連結(jié)需要仔細(xì)編碼確保成功執(zhí)行。此程式碼片段提供了常見(jiàn)問(wèn)題的解決方案:
<code class="php"><html>
<head>
<title>Links Page</title>
</head>
<body>
<h2>Choose and delete selected links.</h2>
<?php
$dbc = mysqli_connect('localhost','root','admin','sample') or die('Error connecting to MySQL server');
$query = "select * from links ORDER BY link_id";
$result = mysqli_query($dbc,$query) or die('Error querying database');
$count=mysqli_num_rows($result);
?>
<table width="400" border="0" cellspacing="1" cellpadding="0">
<tr>
<td>
<form name="form1" method="post" action="">
<table width="400" border="0" cellpadding="3" cellspacing="1" bgcolor="#CCCCCC">
<tr>
<td bgcolor="#FFFFFF"> </td>
<td colspan="3" bgcolor="#FFFFFF">
<strong>Delete multiple links</strong>
</td>
</tr>
<tr>
<td align="center" bgcolor="#FFFFFF">#</td>
<td align="center" bgcolor="#FFFFFF">
<strong>Link ID</strong>
</td>
<td align="center" bgcolor="#FFFFFF">
<strong>Link Name</strong>
</td>
<td align="center" bgcolor="#FFFFFF">
<strong>Link URL</strong>
</td>
</tr>
<?php
while ($row=mysqli_fetch_array($result)) {
?>
<tr>
<td align="center" bgcolor="#FFFFFF">
<input name="checkbox[]" type="checkbox" value="<?php echo $row['link_id']; ?>">
</td>
<td bgcolor="#FFFFFF"> <?php echo $row['link_id']; ?> </td>
<td bgcolor="#FFFFFF"> <?php echo $row['link_name']; ?> </td>
<td bgcolor="#FFFFFF"> <?php echo $row['link_url']; ?> </td>
</tr>
<?php
}
?>
<tr>
<td colspan="4" align="center" bgcolor="#FFFFFF">
<input name="delete" type="submit" value="Delete">
</td>
</tr>
</table>
</form>
</td>
</tr>
</table>
<?php
// Check if delete button active, start this
if(isset($_POST['delete']))
{
$checkbox = $_POST['checkbox'];
for($i=0; $i<count($checkbox); $i++) {
$del_id = $checkbox[$i];
$sql = "DELETE FROM links WHERE link_id='$del_id'";
$result = mysqli_query($dbc, $sql); // Pass the database connection here
}
// if successful redirect to view_links.php
if($result){
echo '<meta http-equiv="refresh" content="0;URL=view_links.php">';
}
}
mysqli_close($dbc);
?>
</body>
</html></code>
修正:
- 將複選框名稱視為陣列:name="checkbox []" 而不是name="checkbox"。
- 將 $dbc 資料庫(kù)連接傳遞給每個(gè) mysqli_query 調(diào)用,如 $result = mysqli_query($dbc, $sql); 所示。
透過(guò)這些修改,程式碼應(yīng)該根據(jù)所選的複選框正確刪除多行。 以上是如何在 PHP 中使用複選框刪除多行:解決常見(jiàn)錯(cuò)誤並確保成功執(zhí)行?的詳細(xì)內(nèi)容。更多資訊請(qǐng)關(guān)注PHP中文網(wǎng)其他相關(guān)文章!
本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願(yuàn)投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請(qǐng)聯(lián)絡(luò)admin@php.cn
什麼是PHP,為什麼它用於Web開(kāi)發(fā)?
Jun 23, 2025 am 12:55 AM
PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti
我如何了解最新的PHP開(kāi)發(fā)和最佳實(shí)踐?
Jun 23, 2025 am 12:56 AM
TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource
如何設(shè)置PHP時(shí)區(qū)?
Jun 25, 2025 am 01:00 AM
tosetTherightTimeZoneInphp,restate_default_timezone_set()functionAtthestArtofyourscriptWithavalIdidentIdentifiersuchas'america/new_york'.1.usedate_default_default_timezone_set_set()
編寫(xiě)清潔和可維護(hù)的PHP代碼的最佳實(shí)踐是什麼?
Jun 24, 2025 am 12:53 AM
寫(xiě)乾淨(jìng)、易維護(hù)的PHP代碼關(guān)鍵在於清晰命名、遵循標(biāo)準(zhǔn)、合理結(jié)構(gòu)、善用註釋和可測(cè)試性。 1.使用明確的變量、函數(shù)和類(lèi)名,如$userData和calculateTotalPrice();2.遵循PSR-12標(biāo)準(zhǔn)統(tǒng)一代碼風(fēng)格;3.按職責(zé)拆分代碼結(jié)構(gòu),使用MVC或Laravel式目錄組織;4.避免麵條式代碼,將邏輯拆分為單一職責(zé)的小函數(shù);5.在關(guān)鍵處添加註釋並撰寫(xiě)接口文檔,明確參數(shù)、返回值和異常;6.提高可測(cè)試性,採(cǎi)用依賴注入、減少全局狀態(tài)和靜態(tài)方法。這些做法提升代碼質(zhì)量、協(xié)作效率和後期維護(hù)便利性。
如何使用PHP執(zhí)行SQL查詢?
Jun 24, 2025 am 12:54 AM
Yes,youcanrunSQLqueriesusingPHP,andtheprocessinvolveschoosingadatabaseextension,connectingtothedatabase,executingqueriessafely,andclosingconnectionswhendone.Todothis,firstchoosebetweenMySQLiorPDO,withPDObeingmoreflexibleduetosupportingmultipledatabas
如何快速測(cè)試PHP代碼片段?
Jun 25, 2025 am 12:58 AM
toquicklytestaphpcodesnippet,useanonlinephpsandboxlike3v4l.orgorphpize.onlineforinstantantantExecutionWithOutSetup; runco????delocalocallocallocallocallocallocallywithpplibycreatinga.phpfileandexecutingitviateringitviatheterminal;
如何升級(jí)PHP版本?
Jun 27, 2025 am 02:14 AM
升級(jí)PHP版本其實(shí)不難,但關(guān)鍵在於操作步驟和注意事項(xiàng)。以下是具體方法:1.確認(rèn)當(dāng)前PHP版本及運(yùn)行環(huán)境,使用命令行或phpinfo.php文件查看;2.選擇適合的新版本並安裝,推薦8.2或8.1,Linux用戶用包管理器安裝,macOS用戶用Homebrew;3.遷移配置文件和擴(kuò)展,更新php.ini並安裝必要擴(kuò)展;4.測(cè)試網(wǎng)站是否正常運(yùn)行,檢查錯(cuò)誤日誌確保無(wú)兼容性問(wèn)題。按照這些步驟操作,大多數(shù)情況都能順利完成升級(jí)。
如何在PHP中使用頁(yè)面緩存?
Jun 24, 2025 am 12:50 AM
PHP頁(yè)面緩存可通過(guò)減少服務(wù)器負(fù)載和加快頁(yè)面加載速度提升網(wǎng)站性能。 1.基本文件緩存通過(guò)生成靜態(tài)HTML文件並在有效期內(nèi)提供服務(wù),避免重複生成動(dòng)態(tài)內(nèi)容;2.啟用OPcache可將PHP腳本編譯為字節(jié)碼存儲(chǔ)在內(nèi)存中,提升執(zhí)行效率;3.對(duì)帶參數(shù)的動(dòng)態(tài)頁(yè)面,應(yīng)根據(jù)URL參數(shù)分別緩存,並避免緩存用戶特定內(nèi)容;4.可使用輕量級(jí)緩存庫(kù)如PHPFastCache簡(jiǎn)化開(kāi)發(fā)並支持多種存儲(chǔ)驅(qū)動(dòng)。結(jié)合這些方法能有效優(yōu)化PHP項(xiàng)目的緩存策略。
See all articles
|