【问题标题】:read content of file type php from a table in mysql从mysql中的表中读取文件类型php的内容
【发布时间】:2014-05-31 09:19:18
【问题描述】:

我在数据库中创建了一个名为 file 的表

CREATE TABLE `file` (

    `name` varchar(255) NOT NULL,
    `type` varchar(255) NULL,
    `content` varchar(255) NULL,
    PRIMARY KEY (`name`)

)ENGINE=MyISAM;

但我想在获得特定文件类型的记录时,打开该文件的内容

例如:

名称: 测试 类型: php 内容:<?php echo "hello world" ?>

并将其作为 hello world 附加到页面中

谢谢:)

【问题讨论】:

标签: php mysql file file-upload


【解决方案1】:

假设我正确理解了这个问题,并且您想运行您的 PHP 内容包含的任何代码: 您基本上可以使用两种方法来做到这一点,但我也不推荐

1) 使用eval()。这是一个非常简单的解决方案,但也是一个非常糟糕的主意,而且它不适用于许多共享服务器。

http://il1.php.net/manual/en/function.eval.php

2) 将内容字段写入实际的 PHP 文件(如果它不在文件中)并使用 file_get_contents() 或类似方法获取该文件的内容。您需要输入文件的 URL,以便仅获取输出,这在某些共享服务器上也不起作用。

http://il1.php.net/manual/en/function.file-get-contents.php

【讨论】:

  • 使用这种技术是否缺少 ov 安全性?
  • 这两种技术都被认为是不好的做法,如果您滥用它们,两者都可能对安全性不利。首先运行任何没有过滤的代码对安全性非常不利,但是如果将其与 eval() 结合使用,那将是一个非常危险的组合。如果有人可以将数据注入您的内容字段,他们就可以在您的服务器上运行任何 PHP 代码。在共享服务器中,eval() 通常会被阻止,您根本无法使用它。
  • 感谢您提供的信息,我将尝试更改此分析
猜你喜欢
  • 2014-03-29
  • 2014-02-10
  • 1970-01-01
  • 1970-01-01
  • 2011-04-10
  • 1970-01-01
  • 2010-11-16
  • 1970-01-01
  • 2013-03-18
相关资源
最近更新 更多