向服务器发送非法值

时间:2011-04-13 11:07:14

标签: php mysql security firebug server-side

我的表单有一个州名的下拉列表。当用户提交表单时,它会将其发送到我的php脚本,然后将其添加到我的mysql数据库中。

如果用户使用firebug更改状态值并提交它,则它不起作用,因为我的数据库不支持外键。

一种解决方案是将接收状态与状态表进行比较。 (不仅是田地,还有国家,城市,分娩,工作等......)

每个人都知道另一种解决方案吗?

4 个答案:

答案 0 :(得分:1)

我会这样做:

当用户提交值(状态名称)时,它具有内部索引(html元素的id值)。然后,检查您的数据库以查找与索引号匹配的州名。

  

如果我将状态值复制到数组并使用in_arary()进行检查,该怎么办?

你也可以这样做。确保你使用php脚本而不是javascript。

答案 1 :(得分:1)

  

一种解决方案是将接收状态与状态表进行比较。

答案 2 :(得分:0)

或者:

A)在将输入添加到数据库之前验证您的输入 B)使用枚举

答案 3 :(得分:0)

不要直接将数据插入数据库...在触发插入查询之前,首先检查主表中是否存在该值... 如果master表中存在的值只有fire insert查询到你想要的表..

相关问题