<?php
include_once("FTMdatabase.php");
$id = $_GET['AccountID'];
$sql = "DELETE FROM personaldetails WHERE AccountID = '$id'";
$result = mysql_query($sql, $conn);
$msg = "Data Has Been Removed";
confirm($msg);
mysql_close();
?>
<?php
function confirm($msg)
{
echo "<script language=\"javascript\">
alert(\"".$msg."\");
document.location.href='FTMlogin.php';
</script>";
}
?>
我尝试这个代码。但我收到一个错误,提示“AccountID”未定义索引。我的数据库中的第一行是 AccountID。为什么会发生这种情况?
<?php
include_once("FTMdatabase.php");
$sql="SELECT * FROM personaldetails";
$result = mysql_query($sql, $conn);
while($row = mysql_fetch_array($result))
{
$id = $row['AccountID'];
$name = $row['Name'];
$phone = $row['Phone'];
$car = $row['Car'];
$comment = $row['Comment'];
?>
<table border="1">
<tr><td width="10"><?php echo $id; ?></td>
<td width="10"><?php echo $name; ?></td>
<td width="300"><?php echo $phone; ?></td>
<td width="100"><?php echo $car; ?></td>
<td width="100"><?php echo $comment; ?></td>
</tr>
<td><a href="FTMdelete.php?id=<?php echo $id;?>">
Delete</a>
</table>
<?php
这是获取$id
的地方。我使用 $_GET['AccountID']
最佳答案
您遇到的错误不是数据库错误,而是 php 警告。
'AccountID'未定义索引是因为这一行
$_GET['AccountID'];
这是因为您没有将 AccountID 传递到页面。 你应该像这样使用
if($isset($_GET['AccountID'])){
echo "No value for AccountID given";
exit;
}
如果您正在使用mysql_query();那么就不需要连接了
行
$result = mysql_query($sql, $conn);
应该是这样的
$result = mysql_query($sql);
顺便说一句,mysql 已被弃用,因此请使用 mysqli。
所以最终的结果代码将如下所示
<?php
include_once("FTMdatabase.php");
if($isset($_GET['AccountID'])){
echo "No value for AccountID given";
exit;
}
$id = $_GET['AccountID'];
$sql = "DELETE FROM personaldetails WHERE AccountID = '$id'";
$result = mysql_query($sql);
if($result){
$msg = "Data Has Been Removed";
confirm($msg);
} else {
echo "error on query";
}
mysql_close();
function confirm($msg)
{
echo "<script language=\"javascript\">
alert(\"".$msg."\");
document.location.href='FTMlogin.php';
</script>";
}
?>
关于php - 从 phpmyadmin 数据库中删除数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30381390/