我正在为一个网站创建一个注册系统。 MySQL 数据库具有独特的字段,因此用户不能使用同一电子邮件、用户名或电话号码创建多个帐户。当数据被复制时,使用 mysqli_error() 返回错误,例如键“EMAIL”的重复条目“email@example.com”,错误代码为 1062。我想做的是让用户返回输入不同的电子邮件地址、用户名或电话号码,为此我在这种情况下,需要列的 KEY 'EMAIL' 是否有任何方法可以从发回的错误中执行此操作。 谢谢
最佳答案
你应该像这样在插入之前得到检查查询:
SELECT * FROM TABLE WHERE email = '$email' OR phone = '$phone' OR username = '$username'
然后你可以进行简单的检查并抛出异常/错误。
关于PHP MySQL 有没有办法从错误中获取列键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36550886/