gpt4 book ai didi

php - 通过 PHP 删除数据库行

转载 作者:行者123 更新时间:2023-11-29 07:34:46 27 4
gpt4 key购买 nike

我根据我所设置的标题浏览了“建议”,这些主题要么没有得到回答,要么与我的情况无关(据我所知)。

我有一个 PHP HTML 页面,它从数据库调用信息并将其输入到表中。我已经准备好一个用于删除功能的标签,但我似乎无法正确执行它。我希望这里有人能够帮助我。

这些是所有相关页面。

连接.php

<?php
try{
$handler = new PDO('mysql:host=127.0.0.1;dbname=data', 'root', 'root');
$handler->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
echo 'ERROR: ' . $e->getMessage();
}
?>

位置1.php

<?php
include('connection.php');
$query = $handler->query('SELECT * FROM subsordered WHERE location ="location1"');
$delete = $handler->query('DELETE * FROM subsordered WHERE id = :id');

?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
<body>
<h1 align="center">Location 1</h1>
<table align="center" border="1" height="10%" width="80%">
<tr>
<th>ID</th>
<th>Name</th>
<th>Desc</th>
<th>Location</th>
<th></th>
</tr>
<?php while($row = $query->fetch()){ '<tr>
<td align="center">';echo $row[''],'</td>
<td align="center">';echo $row['id'],'</td>
<td align="center">';echo $row['name'],'</td>
<td align="center">';echo $row['desc'],'</td>
<td align="center">';echo $row['location'],'</td>
<td align="center"><a href="connection.php?id='.$row['id'].'">Delete</a></td>
</tr>';} ?>
</table>

当我尝试将 mysql 删除调用保留在 location1 的第一个 php 部分中时,它会破坏页面,我很确定这与我将 2 个调用分配给 1 个函数这一事实有关,但我除了为单个删除调用创建一个全新的页面我不知道还能做什么

最佳答案

尝试:

<?php
include('connection.php');
$query = $handler->query('SELECT * FROM subsordered WHERE location ="location1"');
if (isset($_GET["id"])) {
$delete = $handler->exec('DELETE FROM subsordered WHERE id = \'' . $_GET["id"] . '\'');
}

?>

这应该有效。无论如何,我会考虑更改代码以防止 SQL 注入(inject)(检查 this )

关于php - 通过 PHP 删除数据库行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31223242/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com