具有Regex验证功能或HTML5验证器

时间:2013-08-08 09:19:15

标签: regex html5 validation

我刚刚发现了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/>

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

谢谢你,祝你有愉快的一天!

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:0)

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

如果您仅支持最新的浏览器,那么HTML5将很好用。作为客户端,您无法确保其安全,因此请考虑您如何呈现/支持该网站。

否则请转到Regex,因为仍有大多数人使用旧版本。

希望你知道这个

  

HTML5Shiv是由 Sjoerd Visscher 发现的JavaScript解决方法,用于在Internet版本中启用HTML5元素的样式   版本9之前的资源管理器,它不允许使用未知元素   没有JavaScript的风格。

刚刚找到这个HTML5 Validation

  

HTML5的约束验证API可以添加客户端验证   快速形成,同时提供JavaScript API和CSS钩子   定制

     

虽然实施和旧版仍存在一些问题   浏览器处理,具有良好的polyfill或服务器端回退   您今天可以在表单中使用这些API。