php mysql用户名变量包含两个值

时间:2013-05-07 11:02:56

标签: php mysql

我想知道我们是否可以将一个变量等于两个字符串值?我做了一个登录表单,不需要用户名,只需要密码。如果密码匹配,则显示正确的人名。 我完全理解这不是一种正确的方式或安全的登录表单方式,但此表单只能在内部供5人使用。

在php文件中,我设置$username = "PersonName";表单只需要密码, 如果密码正确,此人可以登录并在页面上输入名称“PersonName1”。我用的是mysql

$result = mysql_query("SELECT * FROM users WHERE username='$username' AND password='$password_encrypt '");

如果我想添加其他PersonName2我可以$username="PersonName1" || $username = "PersonName2";

或者有人可以给我一些想法吗?非常感谢

5 个答案:

答案 0 :(得分:2)

是的,在SQL查询中使用OR操作数:

SELECT * FROM users WHERE (username='$username' OR username='$username2') AND password='$password_encrypt '

答案 1 :(得分:1)

您还可以使用IN子句:

SELECT * 
FROM users 
WHERE username IN ('$username', '$username2')
    AND password='$password_encrypt'

答案 2 :(得分:0)

可以在mysql中检查X OR Y,只需确保使用括号分隔条件。

SELECT * FROM users WHERE (username='$firstName' || username='$secondName') AND password='$password_encrypt '

答案 3 :(得分:0)

OR可在MYSQL中使用

   SELECT * FROM users WHERE (username='$username' OR username='$username2') AND password='$password_encrypt '

答案 4 :(得分:0)

如果用户不需要用户名,那么在SQL查询中只搜索匹配的密码,然后使用PHP即可

while($user = mysql_fetch_assoc($result)){ /* check for a good username?? */ }

此外,不推荐使用mysql_ *,研究MySQLi或PDO以获得最佳实践。