我想知道如何让我的代码更简洁,更易于使用。我有单独的delete.php文件,用于从页面中删除特定数据。例如,我有流派,平台和客户。
流派删除
//get value of ?id= from the url
$DeleteID = $_GET['id'];
echo $DeleteID;
require("connect.php");
//Linking
$link = connectToDB();
//SQL Query
$sql = "DELETE
FROM Genre
WHERE GenreID = ".$DeleteID;
//Execute
$result = $link->query($sql);
//Check
if ($link->affected_rows == 1) {
header( "Location: genre.php" );
}
else {
echo "Didn't Work";
}
平台删除
<?php
session_start();
//get value of ?id= from the url
$DeleteID = $_GET['id'];
echo $DeleteID;
require("connect.php");
//Linking
$link = connectToDB();
//SQL Query
$sql = "DELETE
FROM Platform
WHERE PlatformID = ".$DeleteID;
//Execute
$result = $link->query($sql);
//Check
if ($link->affected_rows == 1) {
header( "Location: platform.php" );
}
else {
echo "Didn't Work";
}
我想知道是否有可能将这些文件变成我可以更改或声明的1个删除文件。用户通过表格中的按钮重定向到这些页面,并使用记录的PK ID重定向到删除页面。
答案 0 :(得分:1)
您可以将另一个变量传递到URL中,以指示您要删除的内容(流派,平台,客户等)。
当然,创建一堆if / else语句变得非常容易,但它会将所有功能限制在一个文件中。
答案 1 :(得分:0)
你可以编写一个小辅助函数:
function deleteMe($link, $table, $id){
//SQL Query
$id = intval($id);
$sql = "DELETE
FROM `$table`
WHERE `{$table}ID` = ".$id;
//Execute
$result = $link->query($sql);
return $link->affected_rows;
}
然后,您可以将其包含在单个删除页面中,并根据需要使用它,将表和ID传递给GET参数。