Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/254.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php从多个表中删除_Php - Fatal编程技术网

Php从多个表中删除

Php从多个表中删除,php,Php,我有一个基本的后台设置,其中有几个表列出了数据库内容,并根据id选择删除行。但是对于我拥有的每个产品,我需要有不同的PHP删除文件,在本例中,“product_01”,“product_02”,等等 如何在查询字符串(href='delete\u product\u 01.php?id=…)中传递自定义id,以便在delete php文件中有一个条件语句,这样我只需要一个delete.php文件 多谢各位 back.php.php 您可以将产品id作为第二个get参数传递,如 delete_pr

我有一个基本的后台设置,其中有几个表列出了数据库内容,并根据id选择删除行。但是对于我拥有的每个产品,我需要有不同的PHP删除文件,在本例中,
“product_01”
“product_02”
,等等

如何在查询字符串(
href='delete\u product\u 01.php?id=…
)中传递自定义id,以便在delete php文件中有一个条件语句,这样我只需要一个delete.php文件

多谢各位

back.php.php


您可以将产品id作为第二个get参数传递,如

delete_product.php?id=4&product_id=1
delete.php中,您可以通过如下方式操作字符串

"delete from product_".$_GET["product_id"]."_table where id='$id'"
但是你真的不应该这样做

以下是导致此类代码设计非常危险和糟糕的多个原因:


SQL注入 可以很容易地利用get参数执行邪恶的sql代码。想象有人打电话来

delete_product.php?id=4';DROP database;
这样做,他不仅会删除一个产品,还会删除所有产品。 请查看有关这方面的更多信息

mysql_*函数
mysql.*
函数长期以来被弃用,不应使用。原因有很多,看看吧

数据库设计
为您的每个产品指定一个表是非常糟糕的数据库设计。想象一下,您的公司(或此处销售的任何实例)正在改变其产品组合,删除或添加产品。你需要做大量的改变。如果你考虑修改你的概念(你真的应该)会给你提供一个很好的起点。这听起来像是DB的设计缺陷,还是我看错了这个问题?您可以使用此代码进行SQL注入。请查看此处:。这段代码非常不安全。如果我尝试去
delete_product_01.php?id='或1=1;--?我不明白为什么人们一直使用mysql,如果你还不想学习准备好的语句,至少使用mysqli。但尽管如此,我不明白数据库是如何建立的。你能澄清一下吗?
"delete from product_".$_GET["product_id"]."_table where id='$id'"
delete_product.php?id=4';DROP database;