我已经阅读了其他帖子但仍无法解决这个问题。 我试图根据它的ID删除数据库中的记录。 此代码是要删除的项目的来源。
echo '<tr>';
echo '<td>' . $row['site_name'] . '</td>';
echo '<td>' . $row['site_code'] . '</td>';
echo '<td>' . $row['site_address'] . '</td>';
echo '<td>' . $row['site_city'] . '</td>';
echo '<td>' . $row['site_postalcode'] . '</td>';
echo '<td>' . $row['id_province'] . '</td>';
echo '<td>' . $row['id_country'] . '</td>';
echo '<td><a href="/delete.php?id=' . $row['id'] . '">delete</a></td>';
echo '<td><a href="/modify.php?id=' . $row['id'] . '">modify</a></td>';
echo '</tr>';
我的delete.php包含以下内容:
<?php
$con = mysqli_connect("localhost", "root", "", "project1");
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$sites_id=$_GET['ID'];
if (isset($sites_id)) {
$query = mysqli_query("DELETE FROM sites WHERE ID='$sites_id'");
}
?>
我收到通知:未定义的索引:第8行的C:\ wamp \ www \ delete.php中的ID
答案 0 :(得分:1)
如果您有$_GET['ID']
,则$_GET['id']
。这些键区分大小写。
答案 1 :(得分:1)
在html中你的id是小写的,而php是大写的......
也改变了行
$sites_id = $_GET['ID'];
if (isset($sites_id))
到
if (isset($_GET['id']))
$sites_id = $_GET['id'];
答案 2 :(得分:1)
PHP对数组键区分大小写:
echo '<td><a href="/modify.php?id=' . $row['id'] . '">modify</a></td>';
^^---lower case
$sites_id=$_GET['ID'];
^^---upper case
就PHP而言,ID
和id
是两个完全不同的数组键。