【发布时间】:2012-01-06 07:25:47
【问题描述】:
我的表单将用户输入(输入+文本区域)保存到平面文件数据库中。 我在 Google 上找到了很多关于如何创建平面文件数据库的示例,但没有人正确地涵盖了一些关于如何正确保护表单免受 XSS 和其他恶意攻击的基础知识。
我知道最好的方法是拥有(例如:)一个 SQL 数据库……但事实并非如此。
到目前为止我知道(这可能是错误的!如果是,请纠正我):
- 最好使用 .php 文件来存储数据(在
<?php ...data... ?>内)而不是 .txt 文件 - 如果可能的话,将带有
deny from all的 .htaccess 放到数据库文件夹中 - 在提交之前通过 php 验证您的输入和文本区域。 (但是具体怎么做???我的意思是……最好的方法是什么?)
- 正确验证您的字段 (php)(究竟如何...有些做法仅适用于 sql 数据库,不适用于 ffdb...)
- 我看起来像
mysql_real_escape_string但对 ffdb 来说已经足够了
你的想法是什么? 感谢您的帮助
【问题讨论】:
-
第一个听起来很奇怪。您在哪里找到该建议?
-
你有什么理由想要一个平面文件数据库吗?如果只是因为你不能拥有 MySQL(或 postgreSQL 或 ...),你是否在使用 SQLite 时大吃一惊?它将数据存储在您可以保存在您想要的任何文件夹中的文件中,并且在 PHP5 中默认启用
-
谢谢@Carlos ...实际上我听说过很多 SQLite 但从来没有时间去探索它...我只是感兴趣:拥有一小段代码 例如:聊天室或留下一个用于创建小型 FFDB 的评论表单...特别是在无法访问 SQL 数据库的情况下。在这种情况下,“外面”没有多少简单的信息可用......
标签: php javascript security flat-file