0

我刚刚发现了 HTML5 验证器功能,我觉得它真的很容易使用(而且非常美观,尤其是红色警告边框和显示所需输入格式的对话气泡)!

但是,我不知道是否最好使用带有正则表达式的函数来手动检查每个用户输入,例如:

    function check_title($title){
    if(!preg_match("/^[0-9a-zA-Z]+$/", $title))
        return FALSE;
    else
        return TRUE;
}

或使用 HTML5 验证器,例如:

<input type="text" name="username" placeholder="username" maxlength="16" pattern="[0-9a-zA-Z]{5,}" title="Username must be 5-16 length" required/>

我可以知道哪个更安全吗?因为我正在尝试创建一个安全的网站。

谢谢你,祝你有美好的一天!

4

2 回答 2

1

最安全的方法是验证发布值服务器端。永远不要推客户!

于 2013-08-08T09:20:57.517 回答
0

HTML5虽然是一项最新的摇摆技术,但它仍在进行中。 旧版本的浏览器将不支持它(您可以找到一些解决方法来支持它)。

如果你只支持最新的浏览器,那么HTML5会很好用。作为客户端,您无法找到它的安全性,因此请考虑一下您如何展示/支持该网站。

else go for Regex,因为大多数人仍然使用旧版本。

希望你知道这一点

HTML5Shiv是一种 JavaScript 解决方法,由Sjoerd Visscher发现,用于在 9 版之前的 Internet Explorer 版本中启用 HTML5 元素的样式,这不允许在没有 JavaScript 的情况下为未知元素设置样式。

刚刚找到这个HTML5 验证

HTML5 的约束验证 API 可以快速向表单添加客户端验证,同时提供 JavaScript API 和 CSS 挂钩以进行自定义。

尽管实现和旧浏览器仍有一些问题需要处理,但通过良好的 polyfill 或服务器端回退,您现在可以在表单中使用这些 API。

于 2013-08-08T09:37:12.550 回答