2

我正在使用代码点火器。我用 html5 验证从代码中编写了简单的代码。但它不起作用。它仍然进入控制器。这是我的代码。

<?php echo form_open('welcome/RigesterValue');?>
<h4> Rigesteration </h4>
<table border="2" align="center">
<tr><td><label>First name</td>
<td><input type="text" maxlength="20" id="First_name" name="First_name" required pattern="[A-Z ]+"></td></tr>
<tr><td><label>Last name</td>
<td><input type="text" maxlength="20" name="Last_name"></td></tr>
<tr><td><label>User name</td>
<td><input type="text" maxlength="20" name="User_name"></td></tr>
<tr><td><label>Password</td>
<td><input type="password" maxlength="20" name="Password"></td></tr>
<tr><td><label>Confirm Password</td>
<td><input type="password" maxlength="20" name="Confirm_Password"></td></tr>
<tr><td><label>Address</td>
<td><input type="text" maxlength="20" name="Address"></td></tr>
<tr><td><label>Cell number</td>
<td><input type="text" maxlength="20" name="Cell_number"></td></tr>
<tr><td><label>Email</td>
<td><input type="text" maxlength="20" name="Email"></td></tr>
<tr><td><Label>Status</Label></td>
</td></tr><br>
<tr><td align="center" colspan="2"><input type="Submit" value="Register"></td></tr>
</table>
<?php echo form_close();?

我只在第一个字段上应用了 html5 验证..这是 First_name..但它仍然转到控制器页面。

4

1 回答 1

2

CodeIgniter自己的验证通常可以解决问题。这是最安全的,因为它将接收值、验证它们然后处理它们。

由于 Firebug 等原因,通过浏览器进行的验证并不可靠。最后,我可以轻松地将我想要的任何值发布到您的页面,如果验证仅涵盖 HTML5 等,您的系统将不知道是什么击中它。

总是让你的服务器验证一切,但你也可以让一些事情在你的视图中完成。例如,如果您每次都需要发布只是为了听到它已被占用,那么查找未占用的用户名可能会很麻烦,因此可以通过 ajax 检查用户名是否被占用并在提交前显示。

如果您让 form_validation 按预期工作,您可能不会认为需要更多方法来验证您的字段。

于 2013-01-11T09:18:20.620 回答