我目前在我的数据库中有一个名为category的表
尝试从数据库中撤回行仅使用以下代码返回1结果
private function navigation(){
$url = BASE_URL;
$dbc = @mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);
if (!$dbc) {
trigger_error('Could not connect to MySQL:' .mysqli_error());
}
$query = "SELECT catId, category AS 'catName' FROM category ORDER BY catName DESC";
$result = mysqli_query($dbc, $query) or trigger_error("Query: $query\n<br>MySQL Error: ");
while($row = mysqli_fetch_array($result)){
$name = $row['catName'];
$catId = $row['catId'];
$this -> nav =<<<NAVIGATION
<li>$name</li>
<p>test</p>
NAVIGATION;
}
}
我已尝试在函数外部执行此操作,并且所有行都可以正常运行。
$querying = "SELECT catId, category AS 'catName' FROM category ORDER BY catName ASC";
$results = mysqli_query($dbc, $querying) or trigger_error("Query: $query\n<br>MySQL Error: ");
while($row = mysqli_fetch_array($results)){
$name = $row['catName'];
$catId = $row['catId'];
$page->body ("$name");
}
我想知道是否有人可以指导我在哪里出错。
提前谢谢。
答案 0 :(得分:0)
在第一个代码中,您每次都将值赋给$this -> nav
变量,以便它为您提供mysql结果数组中的最后一个数据。
当你调用函数时,它并不是真正使用数据库连接。
答案 1 :(得分:0)
我认为你想要将每一行追加到前一行。尝试
$this -> nav .=
...
(点等于)