【问题标题】:Deleting SQL record using PHP [closed]使用 PHP 删除 SQL 记录 [关闭]
【发布时间】:2016-06-17 06:38:26
【问题描述】:

我是 PHP 和 SQL 的初学者。我一直在尝试使用以下代码删除 SQL 表中的行,但它不起作用。请帮忙。

<?php
/* 
 DELETE.PHP
 Deletes a specific entry from the 'db' table
*/

 // connect to the database
 include('connect-db.php');

 // check if the 'id' variable is set in URL, and check that it is valid

 // get id value
 $id = $_GET['id'];

 // delete the entry
 $result = mysql_query("DELETE FROM db WHERE 'Report No.'= '$id'")
 or die(mysql_error()); 

 // redirect back to the view page
 header("Location: view.php");

 // if id isn't set, or isn't valid, redirect back to view page
 {
 header("Location: view.php");
 }

?>

【问题讨论】:

  • db 是你的表名吗?和报告号??这是什么,这里你需要给你的表字段名称。
  • 用引号将列名换成反引号
  • 回显删除查询并运行 phpmyadmin SQL 选项卡。执行了吗?

标签: php mysql sql-server


【解决方案1】:

在表格字段名称“报告编号”周围应用反引号(`) (它不是定义表字段名称的标准方法)

试试这个

$result = mysql_query("DELETE FROM db WHERE `Report No.`= '$id'");

【讨论】:

    【解决方案2】:

    通过删除名称表的单引号来修复您的查询:

    $result = mysql_query("DELETE FROM db WHERE `Report No.`= '$id'");
    

    确保为报告编号列名称键入正确。实际上对于命名报告号是不推荐的。

    【讨论】:

    • 删除单引号会导致错误,因为不接受空格。然而,用反引号替换单引号有帮助。谢谢你的建议。
    • 你使用什么数据库?这是因为您的表名包含空格。所以你必须为报告编号添加`符号。我想对于没有空格的简单名称它可以工作。
    猜你喜欢
    • 2012-04-23
    • 1970-01-01
    • 2021-05-28
    • 1970-01-01
    • 1970-01-01
    • 2012-11-28
    • 2012-12-15
    • 2013-04-01
    • 2020-11-12
    相关资源
    最近更新 更多