在我的应用程序中,用户可以提交链接。我想将链接的文本内容插入到我的 MySQL 数据库中,以便我可以进行进一步的索引和搜索。
我正在考虑使用PHP中的file_get_contents方法,然后将数据插入MySQL。这里有哪些安全隐患?或者这个任务流程是错误的,有一些特殊的模块可以完成这些类型的工作?
(我已经在使用PDO,但我之前可能没有明确表示我只想获取主要文本内容,不包括html中可能包含的css和javascript)
最佳答案
正如 BenM 所说,不要重新发明 Google。 但是,如果您决定的话,请注意以下几点:
file_get_contents() 是获取 URL 内容的正确方法,您可以使用
stream_context_create()
创建其他上下文选项,以避免索引 404 或 500 链接并遵循永久重定向当你得到你的代码时,你必须解析它,去掉不需要的部分并获取文本内容。 Here关于该特定主题的信息丰富的问题
您必须考虑传入内容的字符集。即使您尊重源代码声明的字符集,您也很容易陷入麻烦。 Here是有关该主题的另一个信息链接
最后,只有您遵循有关使用内置转义函数和准备好的语句数据转义的建议,您的数据才会以安全的方式最终存入数据库(参见
PDO
和Mysqli
,不要使用旧的mysql接口(interface))。如果你错过了其中任何一个,你就要为造成的困惑负责。
希望这对您有帮助。
关于php - 用户提交的链接 - 使用 PHP、MySQL 存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15323007/