将表单数据存储在数据库中

时间:2010-12-19 12:49:53

标签: php

Helllo朋友

我开发了一个表单。它允许用户存储data.now当我存储数据时我必须小心谨慎,以便我没有插入任何错误的值。或者它没有被黑客攻击

3 个答案:

答案 0 :(得分:2)

您所询问的内容称为输入验证,其中有a lot of information

主要有两个部分:

  1. 确保用户输入有用的内容。
  2. 确保用户没有放入有害物品。
  3. 前者通常通过客户端上的JavaScript完成(用户体验通常更平滑,回发更少)。它应该在服务器端重新完成,以确保,因为你永远不应该信任用户输入。基本上它涉及诸如正则表达式之类的东西来检查电子邮件地址的格式,枚举以检查下拉列表的值等等。

    后者必须在服务器端完成,因为您永远不会信任用户输入。它涉及转义字符串以防止SQL注入攻击,验证字段长度以防止缓冲区溢出攻击(这些日子不太常见)等。

答案 1 :(得分:2)

首先,你需要了解2种安全手段。

  • 卫生
  • 验证

卫生是清理数据,以便在删除任何不需要的验证缺陷后验证数据。

卫生包括删除不可见字符(空格,制表符,换行符等)等字符,并且应该全面完成。

验证数据后,例如if(strlen($_GET['key']) > 0),您将数据插入数据库,但执行此操作的方式因数据库类型而异

PHP提供用于转义mysql_real_espae_string()

等数据的函数

此方法被称为数据库转义。

答案 2 :(得分:0)

您需要验证输入,您可以通过在提交表单之前检查输入的Javascript函数来执行此操作,或者您也可以调用PHP函数来检查表单在存储到数据库之前提交的值。如果您正在使用PHP,您可以选择学习MVC框架,例如CodeIgniter或CakePHP,这使得这个过程对于您作为开发人员来说更加轻松和友好。这样的框架通常都有包含验证代码的库,所以你只需要使用它们而不是编写自己的代码。