0
我目前在我的網站上有註冊腳本,要求電子郵件來自特定域名。PHP註冊腳本 - 強制特定電子郵件域名
因此,對於這個示例,我們會說用戶需要使用@ gmail.com電子郵件進行註冊。
$gmail = 'gmail.com';
$emailCheck = strpos($_POST['email'],$gmail);
我再檢查,以確保用戶的表單提交的電子郵件中包含gmail.com繼續之前。
if($emailCheck === false) {
$err[]='Only @gmail.com email addresses are currently accepted.';
}
我只能繼續使用檢查來查看是否有任何$ err []發生了註冊。
if(!count($err)) {
// INSERT IN DB, ETC. //
}
我遇到的問題是,如果用戶填寫[email protected]腳本提供和錯誤。如果用戶提供[email protected],它應該可以正常工作。但是,如果用戶只是輸入電子郵件的第一部分而不使用@ gmail.com,它也可以運行,運行SQL查詢並將值輸入到數據庫中。
任何幫助將不勝感激!
給你發佈的代碼,進入這不是包含「gmail.com」將不會在第二個'if'的身體,因爲$ ERR將設置執行報表的電子郵件地址。你確定這是正在執行的代碼嗎? – CodeCaster
不是一個真正的答案,但我會建議如果(count($ err)<1)並且還在$ gmail var中聲明$ err = []。 –
修正它實際上,你是對的。我還在運行支票以確保它是一個有效的電子郵件地址,然後付給if($ emailCheck),導致$ emailcheck被跳過,而沒有提交完整的電子郵件! – Jako