gpt4 book ai didi

php - 删除基于php中varchar主键的行

转载 作者:行者123 更新时间:2023-11-29 02:22:06 25 4
gpt4 key购买 nike

我试图在 php 中删除表中的特定行,我正在尝试使用恰好是 varchar 类型的主键,主键是 course_Code

course_Code||course_Title||credit_Load||lecturer_id
csc 450 || S.E || 3 || 0

lecturer_id 对于所有添加的记录将始终为 0,因为我想将它用作外键,只有这样值才会从 0 更改为其他值;问题是当我在表中只有一个值并将其删除时,查询运行但添加了一个新行,其中只有 credit_Loadlecturer_id 的值为 0 而其他列保持为空:

course_Code||course_Title||credit_Load||lecturer_id
|| || 0 || 0

这是我为 firstpage.php 编写的代码,$result['course_Code'] 中的值是从数据库中获取的类(class)代码:

<a href="processor3.php?coursecode=<?php echo $result['course_Code']; ?>

然后是processor3.php:

if (isset($_GET['coursecode'])){         
$course_id = $_GET['coursecode'];
$query = mysql_query("DELETE FROM courses WHERE course_Code = '$course_id'");
header("Location:firstpage.php?succ=2");
}

我知道我在 php 中使用已弃用的方式连接到 mysql,但这不是主要问题,我正在尝试教某人 php,但他似乎不太了解 pdo 绑定(bind),所以我想我们慢慢地进展到 pdo。我想我是个糟糕的老师。

最佳答案

太可怕了太可怕了!!!

 $query = mysql_query("DELETE FROM courses WHERE course_Code = '$course_id'");

请不要教任何人这样查询。应转义所有变量,否则存在 SQL INJECTION 漏洞。

至于你的问题,我怀疑有两个可能的问题:

  1. 在您不知情的地方调用了一个添加行的脚本
  2. 您使用错误的 MySQL 查看器来确认删除后的表内容。

您确定以上两种情况都没有发生吗?

关于php - 删除基于php中varchar主键的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30009028/

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