【发布时间】:2017-01-14 18:14:48
【问题描述】:
我将 MySQL 表的结果输出到 HTML 表中,我正在尝试添加删除按钮来删除用户,但它不起作用。
HTML 表单代码:
<?php
$response = $bdd->query('SELECT * FROM users');
$i = 1;
while ($datas = $response->fetch()) {
?>
<tr>
<td><?php echo $datas['first_name']; ?></td>
<td><?php echo $datas['last_name']; ?></td>
<td>
<form action="_delete.php?id=<?php echo $datas['id']; ?>" method="post">
<input type="hidden" name="name" value="<?php echo $datas['id'];?>">
<input class="btn btn-danger" type="submit" name="submit" value="X">
</form>
</td>
</tr>
这是我的 _delete.php :
<?php
try
{
$bdd = new PDO('mysql:host=localhost;dbname=dbname;charset=utf8', 'root', 'root');
}
catch (Exception $e)
{
die('Erreur : ' . $e->getMessage());
}
?>
<?php
$id = (int)$_GET['id'];
$query = "DELETE FROM users WHERE id={$id} LIMIT 1";
//sends the query
mysql_query ($query);
if (mysql_affected_rows() == 1) {
?>
<strong>User Has Been Deleted</strong>
<?php
} else {
?>
<strong>Deletion Failed</strong>
<?php
}
?>
我的结果 url 很好 /_delete.php?id=13 但删除脚本不是。
我有这个错误:Deprecated: mysql_query(): The mysql extension is deprecated and will be removed in the future
有什么想法吗?
【问题讨论】:
-
我不想问,但您是否已经将 mysql_connect() 连接到数据库?
-
是的,我将它包含在我的代码之前,
-
$datas是从哪里填充的?并且您的_delete.php?id是 GET 方法,而不是 POST。在任何情况下,通过 php 和查询检查错误。您的“删除失败”对您没有帮助。 -
@Fred 我更新了我的代码,php 错误是:
Deprecated: mysql_query(): The mysql extension is deprecated and will be removed in the future