Php-创建安全的web应用程序
我知道已经有很多关于这个主题的帖子了,但是现在我对如何制作安全的web应用程序有了很大的困惑 好的,我在做一个注册页面。有一些输入字段,如姓名、出生日期、城市等。 我已经对日期、名称和其他字段进行了验证 但对于国家,我在select标签中有一个从数据库生成的国家下拉列表。 任何人都可以使用inspect元素来更改它的值,所以我怎么知道inspect元素更改了它的值呢 例如,如果用户选择Php-创建安全的web应用程序,php,security,Php,Security,我知道已经有很多关于这个主题的帖子了,但是现在我对如何制作安全的web应用程序有了很大的困惑 好的,我在做一个注册页面。有一些输入字段,如姓名、出生日期、城市等。 我已经对日期、名称和其他字段进行了验证 但对于国家,我在select标签中有一个从数据库生成的国家下拉列表。 任何人都可以使用inspect元素来更改它的值,所以我怎么知道inspect元素更改了它的值呢 例如,如果用户选择India,我将在php中获得,但如果用户将其更改为India,我将获得hacker的值 因此,我如何检查值是否
India
,我将在php中获得,但如果用户将其更改为India
,我将获得hacker
的值
因此,我如何检查值是否更改,以及创建安全web应用程序的好步骤是什么。在服务器端,在接收表单提交的页面上,您可以检查收到的响应是否在您的国家/地区列表中,如果不在,则拒绝
if (!in_array($_POST['country'], $countries)) echo "Invalid country";
不过,我有一个更广泛的问题,那就是为什么这是必要的。如果用户可以从列表中自由选择国家,为什么其中一个用户会更改该值?如果您担心SQL注入攻击,应该使用预先准备好的语句。谢谢您的回复。是的,我正在使用pdo准备的语句,但它无法检测值是否更改,但在这种情况下,in_数组很有用…谢谢