使用了html5 required,后台还需要做 不为空的验证吗

因为以前是用js做验证,但是别人禁掉js那么不为空的验证就没效了,所以后台也要加不为空的验证

但现在大部分都使用了html5 required了

那么后台还需要做不为空的验证吗?

提问者小葫芦

添加回答

21回答
Ty80
3个月前Ty80

认证高级PHP讲师

LS各位大神们说的都很正确

赞同00个回复
黄舟
3个月前黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

前端的验证主要是为了用户体验好,响应速度较快,但是不可靠,是可以绕过的;但是后台的验证才是真正数据合法性的验证,所以说任何前端校验都是不能替代后台校验的。

赞同00个回复
猪哥
3个月前猪哥

认证0级讲师

前端验证仅仅只是为了体验,后端才是真正的验证

赞同00个回复
伊谢尔伦
3个月前伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

当然要加
你审查元素 然后去掉required 试试

赞同00个回复
大家讲道理
3个月前大家讲道理

光阴似箭催人老,日月如移越少年。

必然需要,再补充一个小点。
像个别手机版本的微信内置浏览器打开也是无法使用required

赞同00个回复
Ty80
3个月前Ty80

认证高级PHP讲师

如果我模拟请求呢?

所以要加的!

赞同00个回复
迷茫
3个月前迷茫

业精于勤,荒于嬉;行成于思,毁于随。

后台还是需要验证的,前端的数据永远都不是可信的

赞同00个回复
Ty80
3个月前Ty80

认证高级PHP讲师

必须要,前后否要验证。对于一个懂前端的用户,他可以恶意攻击你的网站。

赞同00个回复
伊谢尔伦
3个月前伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

有个东西叫Firebug.

赞同00个回复
黄舟
3个月前黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

赞同00个回复
阿神
3个月前阿神

闭关修行中......

用户可以模拟浏览器操作,提交非法的数据,简单的可以用 curl实现~

赞同00个回复
阿神
3个月前阿神

闭关修行中......

不要相信前端的任何数据

赞同00个回复
Peter_Zhu
3个月前Peter_Zhu

PHP中文网讲师~~

你是用node做后端的话,就基本没有增加工作量,验证的库啊语句啊都是前后端通用的,直接从前端copy到后端,改一点点就行了。

赞同00个回复
ringa_lee
3个月前ringa_lee

好好学习,天天向上

一楼说得很对,前端和后台都必须要有验证,因为ie8以下的浏览器是不支持html5的。而且前端的数据有时候是不可靠的,前端验证只是一种辅助手段,可以帮助缓解后台压力,提供更好的用户体验而已。任何时候都不要只靠前端来对数据进行处理。

赞同00个回复
伊谢尔伦
3个月前伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

dont believe anything

赞同00个回复
猪哥
3个月前猪哥

认证0级讲师

前后端必须都验证

赞同00个回复
迷茫
3个月前迷茫

业精于勤,荒于嬉;行成于思,毁于随。

一楼回答很正确,后端是最后的保障

赞同00个回复
大家讲道理
3个月前大家讲道理

光阴似箭催人老,日月如移越少年。

在大门装了金属探测仪就可以防歹徒么

歹徒还可以翻窗进来

所以,请在后端加验证

赞同00个回复
猪哥
3个月前猪哥

认证0级讲师

个人觉得还是需要的,一个最简单的场景是:如果用户用的是低版本浏览器的话,比如IE8,那么你能保证HTML 5这个required特性可以生效?

赞同00个回复
大家讲道理
3个月前大家讲道理

光阴似箭催人老,日月如移越少年。

永远不要相信前端的数据。
永远不要相信前端的数据。
永远不要相信前端的数据。

赞同00个回复
ringa_lee
3个月前ringa_lee

好好学习,天天向上

任何时候后台的验证都是不能省略的!!
除了楼上@JellyBool所说的情况,更重要的是请求并非一定是从浏览器发起的,也可能是由其他人手动构造的(可能出于不良的目的),如果某些重要字段在服务端不做验证,就有可能会成为被人利用的漏洞。
所以千万不要完全依赖于客户端验证,应该仅仅把客户端验证作为一种辅助手段。

赞同00个回复