我有一个测试版的注册表,我需要知道我如何检查,以确保电子邮件地址不是已经在数据库中,如果它没有添加它,如果它是返回一条消息。
我希望我不需要先做一次find,然后再做一次if,然后再做一次insert,但有些东西告诉我我必须这样做。
发布于 2012-05-22 20:28:06
您可以在电子邮件上创建唯一索引,然后在安全模式下执行插入。如果电子邮件被窃取,您将收到一个错误。如果没有唯一索引或操作未处于安全模式,则不会出现此错误。
我个人会做一个简单的find。例如,在这个注册表单上,当用户输入他的电子邮件并移动到下一个字段时,我会向服务器发出一个快速的ajax请求,看看这封电子邮件是否被接收,并在表单中显示检查结果。当然,这并不能取代对唯一索引和安全模式(google竞态条件)的需求。
https://stackoverflow.com/questions/10701935
复制相似问题