我有 5 个游戏部分将使用相同的模板表,但它们都会从同一数据库中 mysql 中的不同表中提取数据。但是,我合并了这个:How to include config.php efficiently?
好的,这就是我计划如何解决它。例如,假设我转到 index.php?page=pokemon 然后我计划将 $game_name 设置为 $_GET['page'] 然后使用 $game_name 来选择表(假设我创建了表名 pokemon)并且那么所有的数据都会正确地从mysql中提取出来。我应该有更好的方法吗?
接下来,在有人试图进入一个不存在的游戏的情况下,我希望它重定向到主页。例如,假设他们将 pokemon 拼错为 poekmon 并转到 index.php?page=poekmon 那么它会正确显示一个没有数据的空白模板吗?相反,如果它是一个不存在的游戏,我怎样才能让它只重定向到主页?
这有点类似于 wordpress 的设置方式。它使用 Single.php 作为模板,然后从数据库中抓取数据。
最佳答案
在将任何内容打印到页面本身之前执行您的逻辑,这样,如果您确定用户请求了一个不存在的游戏,您可以简单地使用 header() 进行重定向;
header("Location: homepage.php");
至于查明请求的游戏是否存在,您可以使用获取游戏数据或返回 false 的函数。这样,您就可以执行以下操作:
if (!$data = game_data("pokemon")) header("Location: no-exist.php");
如果请求的游戏确实存在,则脚本继续,您使用 $data 访问游戏数据。当然,在对变量进行清理和准备处理之后,您将用您的变量替换上面示例中的“pokemon”。
请记住在向页面本身输出任何内容之前执行此操作,否则对 header() 的调用将引发“ header 已发送”消息。
关于php - 动态模板表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1957010/