单选按钮和复选框。防止更改值属性
Radio buttons and checkboxes. Prevent changing of the value attribute
所以您有一个复选框或单选按钮,其中包含要发送到数据库的预定义值:
<input name="statement" type="radio" value="AWENSOME">
但是恶意的人或脚本可以很容易地更改您的 checkbox/radio 按钮的值,例如一个基本的 "browser page inspect",然后将其他值发送到数据库。例如:
<input name="statement" type="radio" value="NOT SO AWENSOME! STUPID">
如何防止这些家伙?谢谢。
不,你不能,最好的方法是在数据库中收集所有允许的输入值,并每次在服务器上检查这些值。对于复选框、select、收音机之类的输入,这很容易,因为您确切地知道这些值可以是什么。如果是文本输入,则必须使用正则表达式和清理。
你不能完全阻止用户在浏览器中修改 html 脚本,但你可以阻止不必要的数据输入你的数据库..
为了防止这种情况发生,您应该在服务器端的 php 脚本中有一个验证器。
有很多方法可以防止无效数据进入数据库:
- 在数据库中列出有效值,一旦用户选择它,服务器将检查复选框或单选框中的值是否存在
- 使 radio/checkbox 的值加密,或者说有一些独特的格式,如
zkdie23doo44s
可以被您的服务器识别..
- 定期检查 html 复选框并根据服务器中的原始 html 脚本重新加载值
希望这能帮助您获得一两个想法..
你不能那样做,你必须在服务器端再次检查,对于复选框之类的框你知道值,对于文本框你可以使用正则表达式
如果您使用的是 php:
,那么在您的模型中使用类似的东西可能会有所帮助
if ($data['statement'] == 'AWENSOME' || $data['statement'] == 'FOOBAR' )
{
$statement = $data['statement'];
} else
{
// abort the app or return an error to the user
}
所以您有一个复选框或单选按钮,其中包含要发送到数据库的预定义值:
<input name="statement" type="radio" value="AWENSOME">
但是恶意的人或脚本可以很容易地更改您的 checkbox/radio 按钮的值,例如一个基本的 "browser page inspect",然后将其他值发送到数据库。例如:
<input name="statement" type="radio" value="NOT SO AWENSOME! STUPID">
如何防止这些家伙?谢谢。
不,你不能,最好的方法是在数据库中收集所有允许的输入值,并每次在服务器上检查这些值。对于复选框、select、收音机之类的输入,这很容易,因为您确切地知道这些值可以是什么。如果是文本输入,则必须使用正则表达式和清理。
你不能完全阻止用户在浏览器中修改 html 脚本,但你可以阻止不必要的数据输入你的数据库..
为了防止这种情况发生,您应该在服务器端的 php 脚本中有一个验证器。
有很多方法可以防止无效数据进入数据库:
- 在数据库中列出有效值,一旦用户选择它,服务器将检查复选框或单选框中的值是否存在
- 使 radio/checkbox 的值加密,或者说有一些独特的格式,如
zkdie23doo44s
可以被您的服务器识别.. - 定期检查 html 复选框并根据服务器中的原始 html 脚本重新加载值
希望这能帮助您获得一两个想法..
你不能那样做,你必须在服务器端再次检查,对于复选框之类的框你知道值,对于文本框你可以使用正则表达式
如果您使用的是 php:
,那么在您的模型中使用类似的东西可能会有所帮助if ($data['statement'] == 'AWENSOME' || $data['statement'] == 'FOOBAR' )
{
$statement = $data['statement'];
} else
{
// abort the app or return an error to the user
}