我知道這已被問了很多,而且我已經搜索並且真正嘗試了這一切。我非常接近,但無法實現。PHP/MySQL - 電子郵件驗證不起作用
我試圖檢查用戶名或用戶郵箱是否已被使用並相應地顯示錯誤。
<?php
if (isset($_POST['register'])) {
try
{
$checkValidity = $connect->prepare('SELECT username, usermail FROM users WHERE username = :username OR usermail = :usermail');
$checkValidity->bindValue(':username', $username);
$checkValidity->bindValue(':usermail', $usermail);
$checkValidity->execute();
$row = $checkValidity->fetchColumn();
if ($row == $username) {
$errName = 'This username is already taken.';
}
if ($row == $usermail) {
$errMail = 'Email already in use.';
}
}
catch(PDOException $e)
{
// print $e->getMessage();
}
}
?>
它工作正常的用戶名,但對我的生活,我不能讓電子郵件錯誤工作...
我試圖獨立的SELECT查詢(用戶名/ usermail),以及如果顯示用戶名錯誤,電子郵件錯誤將只顯示。
電子郵件錯誤將永遠不會單獨顯示。
我花了太多時間試圖讓這個工作,我慢慢失去了我的想法。
任何跡象都會是大大讚賞...!
謝謝......
使用fetchRow如果($行[ '用戶名'] == $的用戶名){}如果($ row ['useremail'] == $ usermail){} – JYoThI
我不使用PDO很多,但不fetchColumn只檢索第一列,你的結果集中哪一列始終是用戶名列? –
你需要在'用戶名'部分 –