我想使用preg_replace进行用户名/电子邮件登录 我将它存储在SESSION中,并想检查该数据是否在内部 数据库。因为我想给用户提供记录的机会 使用用户名或电子邮件这个表达式有点怪异和 我不知道如何管理它。有人可以帮忙吗?
所以“$ loginusername”是用户名(A-Za-z0-9)和ALSO电子邮件!所以它应该是
不能取代那些特殊字符......我发现这是作为
的表达
电子邮件:
([A-Za-z0-9._-]+)@([A-Za-z0-9-]+)([A-Za-z0-9.-]*[A-Za-z0-9-]+)*\.([A-Za-z){1,4}
并希望将此作为preg_replace添加到已存在的:
preg_replace('#[^A-Za-z0-9]#i','', $_SESSION["username"]);
我无法使其工作,总是出现语法错误。
我的代码现在是:
if ( !isset ($_SESSION['X5636gYGWEHidwWLOGIN'] ) )
{
header("Location: login.php");
exit();
}
include("includes/connectdatabase.php");
$loginusername = preg_replace('#[^A-Za-z0-9]#i','', $_SESSION["username"]);
$loginpassword = sha1(preg_replace('#[^A-Za-z0-9]#i', '', $_SESSION["password"]));
$sessionvalidation= mysql_query("
SELECT *
FROM gebruikers
WHERE username = '$loginusername' AND password = '$loginpassword'
OR email = '$loginusername' AND password = '$loginpassword' ");
$existCount = mysql_num_rows($sessionvalidation);
if ($existCount == 0)
{
header("Location: login.php");
exit();
}