每当我使用控制器转到指定页面时,$row值都会丢失。
下面的代码显示了我如何进入新页面。
while($row = $result->fetch_assoc()) {
$html .= "<tr>";
$html .= "<td><a href='?article=del&".$row["id"]."'><i class='fas fa-trash-alt'></a></i></td>";
$html .= "</tr>";
}
通常,在我的完整表中,会显示所有数据,包括 ID 和 db 中的名称等。但是当我到达新页面时,$row值丢失了。例如,del 页面将是这样的:
<?php
function del() {
print $row;
}
我会得到这个错误:
注意:未定义的变量:C:\wamp64\www\SMS2\article\del.php 第 3 行中的行
相反,网址确实显示$row["id"],例如:
http://localhost/SMS2/index.php?article=del&15
在这种情况下,我单击了"id"值为 15 的行。
所以基本上,$row值确实加载在 url 中,它是 15,但当我尝试打印它时,它在实际页面中丢失了。
虽然我看不到您的其余代码,但您的 URL 缺少 15 的定义。您需要在 URL 中包含一个变量。例如:
http://localhost/SMS2/index.php?article=del&id=15
而不是
http://localhost/SMS2/index.php?article=del&15
然后在代码中,您将使用 $_GET['id'] 之类的东西从 URL 中提取值 15。
更改
<a href='?article=del&".$row["id"]."'>
到:
<a href='?article=del&id=".$row["id"]."'>
在另一页上:
<?php
$id = $_GET['id'];
print $id;
?>