Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/242.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在数据库中存储菜单?_Php_Mysql_Database Schema - Fatal编程技术网

Php 如何在数据库中存储菜单?

Php 如何在数据库中存储菜单?,php,mysql,database-schema,Php,Mysql,Database Schema,我正在建立一个网站,管理员应该能够从内容中创建菜单项,如页面、论坛等: CREATE TABLE pages ( id INTEGER PRIMARY KEY AUTOINCREMENT, slug TEXT, title TEXT, content TEXT, parent INTEGER, created TEXT DEFAULT '0000-00-00 00

我正在建立一个网站,管理员应该能够从内容中创建菜单项,如页面、论坛等:

CREATE TABLE pages (
  id           INTEGER      PRIMARY KEY AUTOINCREMENT,
  slug         TEXT,
  title        TEXT,
  content      TEXT,
  parent       INTEGER, 
  created      TEXT         DEFAULT '0000-00-00 00:00:00',
  updated      TEXT         DEFAULT '0000-00-00 00:00:00',   
  UNIQUE(slug)
);
以及自定义链接


如何在数据库中存储这些菜单?

您需要为菜单项和链接创建一个单独的表。例如,您的最终查询可能如下所示(部分使用CI框架):


这将允许您的链接列表(或菜单项)根据添加它们的用户进行填充。当然,您可以将它们约束在WHERE子句中的任何内容上,但是将它们保存在一个单独的表中允许(似乎)无限多的条目。网站上的评论也可以采用同样的方式

这是一个非常普遍的问题。但在每种情况下,您都需要为菜单项创建一个表格。您的问题太模糊,请非常清楚地说明您的顾虑。
<ul>
<?php
$sql = "SELECT * FROM `Links` WHERE `dbLinkUser` = 1";
$sqlResult = $this->db->query($sql);

foreach($sqlResult->result() as $link)
{
echo "<li><a href='" . $link->dbLinkURL . "'>" . $link->dbLinkDesc . "</a></li>";
}
?>
</ul>