php - 在 SQL 数据库中存储 HTML 模板并执行它

标签 php mysql

我希望将某些代码片段作为模板存储在数据库表中,但我不确定它们是否会产生问题。我一直在阅读不同帖子中来自不同人的混合消息,我只是不高兴我清楚这个主题。

我已经发现您不能真正将 PHP 回显/打印到网页中。显然,您可以回显 HTML 字符串,但是当您尝试使用 PHP 代码执行此操作时会变得很尴尬。我设法做到这一点的唯一方法是通过 eval,这在大多数情况下显然很糟糕......所以我正在使用另一种方法来实现模板(即编写一个 php 文件用作包含文件)

我要问的主要问题是:在表中的文本类型字段(mediumtext、longtext 等)中存储 PHP 代码字符串(包括 SQL 语句)真的有问题吗?这些 SQL 语句是否可以执行任何操作,例如执行实际操作,或者它们是否会保留为文本字符串?

澄清一下,我存储代码字符串的原因是,如果 Web 管理员希望将它们分配到页面的特定区域 (div),它们是要使用的模板。

最佳答案

使用SMARTYTwig模板引擎。这将巧妙地解决您的问题,您不需要在数据库中存储任何内容。它还将使您的 PHP 代码与 HTML 完全分开。

另一种选择是使用

关于php - 在 SQL 数据库中存储 HTML 模板并执行它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14653201/

相关文章:

php - 将我的 sql 字段中的数据序列化为文本

mysql - 我需要停止重复 Mysql 多对多关系中的行

MySQL 错误 1045 (28000) : Access denied for user 'bill' @'localhost' (using password: YES)

python - 更新数据库中的多行并记录它的最有效方法是什么?

php - IOS 连接到 PHP webserver 插入数据到 mysql

php - 每页都有独特的背景

php - 从现有 PHP 网站创建 iPhone 应用程序有哪些选项?

php - 如何在终端上使用Xdebug?

php - webgrind中自动清除tmp文件

php - 使用 mysqli 的 Bind_param 非对象错误