我知道这已被问了很多,而且我已经搜索并且真正尝试了这一切。我非常接近,但无法实现。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只检索第一列,你的结果集中哪一列始终是用户名列? –
你需要在'用户名'部分 –