这是关于密码表单验证以及使用大写,小写,数字和字符组合的一般问题。研究表明需要preg_match来验证密码(或使用任何变量):(preg_match(“/ ^。(?=。{8,})(?=。 [0-9] )(?=。[az])(?=。 [AZ])。* $ /“)使用preg_match进行PHP表单验证以进行密码检查
虽然如何将我如何将它集成到if语句中? & &虽然这似乎忽略的preg_match一部分。如果(($通== $ PASS2)& &(的preg_match(“/ ^。(?= {8})(?=。 [0-9] )(?=。[az])(?=。 [A-Z])。* $ /“))
任何意见,将不胜感激。
<?php
require "dbconn.php";
$username = ($_GET['username']);
$email = ($_GET['email']);
$pass = ($_GET['pwd1']);
$pass2 = ($_GET['pwd2']);
$USN = ($_GET['schoolnumber']);
$matching = 0;
if($pass == $pass2)
{
echo "<script type='text/javascript'> window.alert('Your details have been successfully registered, please proceed to login with your new credentials!')</script>";
echo '<script>javascript:window.close();</script>';
$query = "INSERT INTO customer VALUES ('".$username."','".$email."','".$pass."','face1.jpg','".$USN."','N')";
$results = mysql_query($query) or die (mysql_error());
$results1 = mysql_query($query1) or die (mysql_error());
}
else{
header('Location:register.php?matching=1');
}
?>
请界定“这似乎并没有工作” – leftclickben 2013-05-02 15:41:16
事实上,这个代码看起来或多或少对我来说是正确的,虽然你真的,真的不应该使用mysql_ *(它已被弃用),你应该真的在插入数据库之前对输入进行清洁。这些代码将被广泛应用于任何SQL注入攻击。 – Adrian 2013-05-02 15:42:33
该代码的作品,但我什么时候使用opperand像($ pass == $ pass2 && preg_match(“/ ^。(?=。{8,})(?=。[0-9])(?=。[ az])(?=。[AZ])。* $ /“)??? – user2141414 2013-05-02 15:54:20