【发布时间】:2016-02-08 02:25:00
【问题描述】:
我试图找出我的代码哪里出错了。 我在导航栏的无序列表中使用 php 构建了导航栏,以从名为“shop”的数据库中检索名为“menu”的 SQL 表中的菜单元素,但无济于事。 我什至有一个 print_r,只是为了告诉我我的资源正在工作,但由于某种原因,整个代码并没有按照所写的那样创建菜单项。
这是代码:
<?php
$menu = [];
mysql_connect('localhost', 'root', '');
mysql_select_db('shop');
$result= mysql_query("SELECT * FROM menu");
if ($result && mysql_num_rows($result)>0){
while($row = mysql_fetch_assoc($result)){
$menu[] = $row;
}
}
echo '<pre>';
$error= print_r($menu);
$error = '' ;
echo '</pre>';
?>
<!DOCTYPE html>
<html>
<head>
<link href="_CSS/style.css" rel="stylesheet" type="text/css"/>
<title>TODO supply a title</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<div class="site-wrapper">
<div class="header">
<div class="navbar">
<ul>
<li><a href="./">Home</a></li>
<?php if(count($menu) >0) : ?>
<?php foreach ($menu as $row) : ?>
<li><a href="#"><?php $row = ['link']; ?></a></li>
<?php endforeach; ?>
<?php endif; ?>
</ul>
</div>
<div class="member">
<ul>
<li><a href="../login.php"></a>Login</li>
<li><a href="../Register.php"></a>Register</li>
</ul>
</div>
</div>
</div>
【问题讨论】:
-
您的内联 PHP(列表内)中没有任何内容可以回显任何内容...您也不需要先检查数组的计数; foreach 将使用空数组做正确的事情。
-
你不应该使用 mysql_* 函数,因为它们已被弃用并且正在被删除php.net/manual/en/function.mysql-connect.php
标签: php mysql list dynamic navbar