Php SELECT语句出现致命错误:中的参数编号无效
我得到这个错误: 致命错误:未捕获PDOException:SQLSTATE[HY093]:参数无效 人数 这是我的代码(这不起作用):Php SELECT语句出现致命错误:中的参数编号无效,php,mysql,sql,select,pdo,Php,Mysql,Sql,Select,Pdo,我得到这个错误: 致命错误:未捕获PDOException:SQLSTATE[HY093]:参数无效 人数 这是我的代码(这不起作用): 但是,如果我删除或,它就会工作 "SELECT id, username, email, password FROM users WHERE username = :usernameOrEmail AND password = :password" 尝试下面的查询 SELECT id, username, email, password FRO
但是,如果我删除
或,它就会工作
"SELECT id, username, email, password FROM users WHERE username = :usernameOrEmail AND password = :password"
尝试下面的查询
SELECT
id, username, email, password
FROM
users
WHERE
:usernameOrEmail
IN (username,email)
AND password = :password
因为在查询中不能多次使用命名参数标记 这是PHP版本错误
您尝试更新php版本您的第一个查询看起来也不错。但请尝试一次“从用户处选择id、用户名、电子邮件、密码,其中password=:password和(username=:usernameOrEmail或email=:usernameOrEmail)”
并告诉我们是否工作。当您将值分配给:usernameOrEmail
和:password
时,可能在下一行有一些错误。您可能需要绑定:usernameOrEmail
两次。使用相同的参数并不意味着不需要3个绑定。使用prepare?在prepared语句中不能两次使用同名的命名参数标记:
SELECT
id, username, email, password
FROM
users
WHERE
:usernameOrEmail
IN (username,email)
AND password = :password