大家好我想問問我的html表單,要求輸入用戶名/電子郵件,你可以把。 然後它通過用戶名或電子郵件進行搜索,如果在數據庫中存在帳戶,如果是進程。 該腳本的作品,但只有電子郵件。如何知道是否是電子郵件或用戶名輸入
我的問題是如何識別輸入字段是用戶寫了一個用戶名還是電子郵件?現在它檢查兩者,但由於某種原因,它不能檢測用戶名只有電子郵件類型。
function getUserEmailExist($input)
{
global $database;
if(preg_match('/^[a-z0-9]+([_\\.-][a-z0-9]+)*@([a-z0-9]+([\.-][a-z0-9]+)*)+\\.[a-z]{2,}$/i', $input)) {
$type = 2;
$get = $database->checkExistRecovery($input, $type);
}
if(preg_match('/[^0-9A-Za-z]/', $input)) {
$type = 1;
$get = $database->checkExistRecovery($input, $type);
}
if($get) {
$this->updateRecover($input, $type);
} else {
return false;
}
}
所以問題是,你的第二個正則表達式不起作用?你想要檢測什麼? – kero
對於您的用戶名檢查,您正在檢查一個否定的「^」字符集。即它不能是'[0-9A-Z-az]'。 – Jon