繁体   English   中英

使用PHP生成动态HTML页面

[英]Generating dynamic HTML pages with PHP

我已经在这个话题上停留了一段时间。 作为一个帮助我学习MySQL,PHP和数据库安全性的项目,我创建了一个轻量级的博客系统。 它给我带来了震撼,我的一些程序员伙伴也想使用它,现在我正在努力改进它的功能。

简而言之,它的工作方式是上传博客文章,标题,作者姓名和日期存储在数据库中,但是实际内容用于动态生成html页面,这是实际博客文章所在的位置查看。 在数据库中,将保存每个博客文章的路径 ,以便可用于访问和查看博客文章页面。 我的博客系统的功能之一是生成的HTML是完全可定制的,因此您不受特定模板的限制。 我目前正在这样做的方法是使用一个函数,该函数接受值的参数,然后返回具有所需格式的HEREDOC,然后将其写入名称基于帖子标题的文件中。

function get_full_post_html($title, $author, $date_posted, $text) {
    return <<<EOT
    <!DOCTYPE html>
    <html>
    <head>
        <title>$title</title>
    </head>
    <body>
        <h1>$title</h1>
        <h3>$author</h3>
        <h4>$date_posted</h4>
        $text
    </body>
    </html>
EOT;
}

不是最干净的解决方案,这就是我寻求更好方法的原因之一。 我需要重新考虑这一点的另一个原因是,因为我当前正在添加对注释的支持,这意味着生成的html页面现在需要是动态的,并使用我的PHP方法来获取注释。 以前,博客文章是静态内容,现在启用了评论,但是页面变成了动态。

我看了这个问题 ,但坦率地说,答案含糊不清,没有多大意义。 我要问的主要问题是,PHP通常如何动态生成页面? 例如,在A List Apart上获取此博客文章: http : //alistapart.com/article/tweaking-the-moral-ui 它有一个用于张贴的物理页面,即tweaking-the-moral-ui ,但仍具有动态功能,如评论,广告等。这是如何完成的?

这里是链接到这整个项目在GitHub上,如果你有兴趣了解它是如何工作的深入开展。

我认为这是一个开始的错误。

您正在将页面写到文件以具有一个不错的url,而不是使用rewriteurl逻辑。

如果要使它们“动态”,则可以在用户每次添加评论时重新生成文件。

或遵循另一个问题的答案:

http://stackoverflow.com/questions/16388959/url-rewriting-with-php

因此,基本上,您可以向博客平台添加评论,并且每个请求都会像平台一样重新生成页面。 在index.php中,您实现了一些逻辑以从url研究所需的帖子。

这些页面将可见,因为在某些列表中已链接。 在清单中而不是:

http://myblog.com/mypost.php?id=33

您将拥有

http://myblog.com/i love my dog/

然后在index.php中,您将进行分析

$_SERVER['REQUEST_URI']

并向用户或搜索引擎的网络爬虫提供正确的帖子

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM