我想检查所有我的注册fiels在php中验证,但似乎除了电子邮件验证之外没有其他验证。请看一下,这样可以帮助我纠正错误。 谢谢。
这是我的注册过程......
if($_POST['action']=="signup")
{
$name = mysqli_real_escape_string($connection,$_POST['name']);
$email = mysqli_real_escape_string($connection,$_POST['email']);
$bankid = mysqli_real_escape_string($connection,$_POST['bankid']);
$phone = mysqli_real_escape_string($connection,$_POST['phone']);
$password = mysqli_real_escape_string($connection,$_POST['password']);
$query = "SELECT email FROM users where email='".$email."'";
$result = mysqli_query($connection,$query);
$numResults = mysqli_num_rows($result);
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) // Validate email address
{
$message = "E - post Redan also!!";
}
elseif($numResults>=1)
{
$message = $email." E-post redan finns!!";
}
else
{
mysqli_query($connection,"insert into users(name,email,bankid,phone,password) values('".$name."','".$email."','".$bankid."','".$phone."','".md5($password)."')");
$message = "Registrera framgångsrikt!!";
}
}
答案 0 :(得分:0)
如果我理解正确,您希望能够在提交时验证注册表单的所有字段,是否正确?
有various examples在线使用PHP filter_var
- 谷歌搜索将为您提供答案。
我建议使用一个验证库,它可以帮助您确保代码的安全性。这种库的一个例子是:https://github.com/Wixel/GUMP
如果你看一下GUMP的源代码,还有更多使用filter_var的例子:
https://github.com/Wixel/GUMP/blob/master/gump.class.php#L878
filter_var($value, FILTER_SANITIZE_NUMBER_INT)
filter_var($value, FILTER_SANITIZE_SPECIAL_CHARS);
// etc