您需要使用以下命令指定两个表email
column:
SELECT *
FROM sollicitant, bedrijf
WHERE sollicitant.email = '$inputEmail'
AND bedrijf.email = '$inputEmail'
另一种可能性是使用带有 alias' 的显式 JOIN (别名'只是为了缩短时间,您不必使用它们。):
SELECT *
FROM sollicitant s, bedrijf b
ON s.email = b.email
WHERE s.email = '$inputEmail'
这样做意味着您只需将一个表的一列中的电子邮件视为JOIN
确保您只获得具有匹配电子邮件的那些行。如果查询为空,则电子邮件在两者中都不存在。
Edit
如果您想根据用户的角色决定去哪里,您应该将所有用户合并到一个表中,其中有一列描述用户的角色:
SELECT * FROM users WHERE email = '$inputEmail'
获取数据后,PHP 会执行以下操作:
if('sollicitant' == $row['role']) {
header('Location: sollicitant.php');
exit();
} elseif ('bedrijf' == $row['role']) {
header('Location: befrijf.php');
exit();
} else {
echo 'There is a problem with your login.';
}
Warning!
...as others have said...
小鲍比 http://bobby-tables.com/ says 您的脚本面临 SQL 注入攻击的风险。 http://stackoverflow.com/questions/60174/how-can-i-prevent-sql-injection-in-php. Even 转义字符串 http://stackoverflow.com/questions/5741187/sql-injection-that-gets-around-mysql-real-escape-string不安全!
我讨厌人们说“我还没那么远……” or “这个网站不会公开……” or “只是为了学校,安全无所谓……”。如果老师和教授从第一天起就没有谈论安全性,那么他们就做错了。挑战他们。他们正在教授草率且危险的编码实践,学生们稍后将不得不忘记这些实践。我也讨厌人们说:“稍后我会增加保安……” or “现在安全已经不重要了……” or “忽略安全风险……”.
切勿存储纯文本密码!请用PHP's 内置函数 http://jayblanchard.net/proper_password_hashing_with_PHP.html来处理密码安全。如果您使用的 PHP 版本低于 5.5,您可以使用password_hash()
兼容包 https://github.com/ircmaxell/password_compat. 没有必要转义密码 http://stackoverflow.com/q/36628418/1011527或在散列之前对它们使用任何其他清理机制。这样做changes密码并导致不必要的额外编码。