我的头两个while循环正在工作,但是当我加3一个用于以下水平,我得到另一个错误:while循环 - 数据库查询失败:
数据库查询失败:你有一个错误的SQL语法;检查对应于你的MySQL服务器版本在1号线
等级1使用 '' 附近正确语法手册 - 工程
$parentpage_set = mysql_query("SELECT * FROM parentpages", $connection);
if (!$parentpage_set) {die("Database query failed: " . mysql_error()); }
echo "<ul class=\"subjects\">";
while ($parentpage = mysql_fetch_array($parentpage_set)) {echo "<li>{$parentpage["menu_name"]}</li>";
echo "</ul>";
等级2 - 工程
$childpage_set = mysql_query("SELECT * FROM childpages WHERE parentpage_id = {$parentpage["id"]}",$connection);
if (!$childpage_set) {die("Database query failed: " . mysql_error()); }
echo "<ul class=\"pages\">";
while ($childpage = mysql_fetch_array($childpage_set)) {echo "<li>{$childpage["menu_name"]}</li>"; }
echo "</ul>";
级别3 - 不工作,如果我评论这我的查询运行,但当未评论我收到一个错误
$subchildpage1_set = mysql_query("SELECT * FROM subchildpages1 WHERE childpage_id = {$childpage["id"]}",$connection);
if (!$subchildpage1_set) {die("Database query failed: " . mysql_error()); }
echo "<ul class=\pages\">";
while ($subchildpage1 = mysql_fetch_array($subchildpage1_set)) {echo "<li>{$subchildpage1["menu_name"]}</li>"; }
echo "</ul>";
我仍然需要在导航中添加两个级别 - 我无法接受我的错误,我一直在尝试捡起它,并且通过很多问题阅读,有人可以告诉我我的错误在哪里是请
请[停止使用'mysql_ *'函数](http://stackoverflow.com/questions/12859942/why-shouldnt-i-use-mysql-functions-in-php)。 [这些扩展](http://php.net/manual/en/migration70.removed-exts-sapis.php)已在PHP 7中删除。了解[编写](http://en.wikipedia.org/ wiki/Prepared_statement)语句[PDO](http://php.net/manual/en/pdo.prepared-statements.php)和[MySQLi](http://php.net/manual/en/mysqli.quickstart .prepared-statements.php)并考虑使用PDO,[这真的很简单](http://jayblanchard.net/demystifying_php_pdo.html)。 –
如果您回应查询,您看到了什么?这是在查询语法错误时应该做的第一件事。 –
做你自己的大忙,做一些基本的关注点分离。至少,在页面顶部执行数据库查询,将结果保存到您需要的结构(某种形式的数组)中,然后在html中迭代数组。混合复杂的PHP与HTML是一个坏主意 - 只是想读上面的代码让我头疼 - 难怪你正在努力 – Steve