Php 用于删除数据库中选定行的表单:始终显示确认

Php 用于删除数据库中选定行的表单:始终显示确认,php,mysql,sql,database,sql-delete,Php,Mysql,Sql,Database,Sql Delete,我有一个表单可以从我的sql数据库中删除一行。我昨天让它运行,但由于某种原因,它不会成功删除任何内容,只是返回一条确认消息。我知道我的所有登录/连接详细信息都是正确的。请告诉我这个脚本中是否有错误 PHP 形式 PHP中前缀为mysql\uuuz的所有函数都不推荐使用。建议使用前缀为mysqli\uu的函数或OOP版本。这是我确信会起作用的代码,我现在没有测试的特权,因为我在打电话。我个人使用mysqli的面向对象版本,但这主要取决于您 <?php $link = new mysqli(

我有一个表单可以从我的sql数据库中删除一行。我昨天让它运行,但由于某种原因,它不会成功删除任何内容,只是返回一条确认消息。我知道我的所有登录/连接详细信息都是正确的。请告诉我这个脚本中是否有错误

PHP

形式


PHP中前缀为
mysql\uuuz
的所有函数都不推荐使用。建议使用前缀为
mysqli\uu
的函数或OOP版本。这是我确信会起作用的代码,我现在没有测试的特权,因为我在打电话。我个人使用mysqli的面向对象版本,但这主要取决于您

<?php

$link = new mysqli( $host, $user, $password, $database );

if ( isset( $_POST['delete'] ) ) {

    $address = $_POST['address'];

    $sql = "DELETE FROM `units` WHERE `address` = '{$address}'";

    if ( ! $retval = $link->query( $sql ) )
        die( "Could not delete data: " . $link->error );

}

?>

我看不到您的PHP中有任何地方设置到MySQL数据库的连接(使用MySQL主机名、用户名和密码)。我真诚地希望这只是内部代码,没有人有机会对其进行良好的SQL注入。是的,如果有人输入
”;从地址字段中1或address='
的单元中删除,这是单元表中记录的结尾。非常感谢,但我仍然无法使其正常工作。我没有SQL方面的经验,虽然我有兴趣学习它。。。我没有时间做这个项目!明天我将再次尝试。现在是学习MySQL的机会(:MySQL命令的一部分,这些命令对我的初学者帮助很大。我明白了!在“=”和$address之间的空格不应该在那里,现在它可以正常工作了。
<form method="post" action="<?php $_PHP_SELF ?>">

<td><input name="address" type="text" address="address"></td>

<input name="delete" type="submit" address="delete" value="Delete">
<?php

$link = new mysqli( $host, $user, $password, $database );

if ( isset( $_POST['delete'] ) ) {

    $address = $_POST['address'];

    $sql = "DELETE FROM `units` WHERE `address` = '{$address}'";

    if ( ! $retval = $link->query( $sql ) )
        die( "Could not delete data: " . $link->error );

}

?>