Inhaltsverzeichnis
回复内容:
Heim Backend-Entwicklung PHP-Tutorial 系统允许手机和邮箱注册,如何保证唯一性

系统允许手机和邮箱注册,如何保证唯一性

Jun 06, 2016 pm 08:12 PM
php

如果只有手机注册,只要给手机做唯一索引即可,但是如果邮箱也可以注册,那进来的就不一定是手机了,也就是说mobile和email两个都不能设唯一索引,因为如果两个手机用户注册进来了,就会有两个email为空的记录,存在不唯一的情况,反之亦然。怎么处理?

回复内容:

如果只有手机注册,只要给手机做唯一索引即可,但是如果邮箱也可以注册,那进来的就不一定是手机了,也就是说mobile和email两个都不能设唯一索引,因为如果两个手机用户注册进来了,就会有两个email为空的记录,存在不唯一的情况,反之亦然。怎么处理?

我感觉有两种解决方案:
1、email和mobile设为同一个字段。
2、email和mobile同时设为unique,但是允许null,当同为null时是可以插入成功的

手机+邮箱做唯一索引呢

楼上两个字段同时判断应该可行。
但一定要用这两个字段作唯一索引吗?另增一个字段,添加记录时添入唯一索引值不知可以不?

你把手机和邮箱设置为联合唯一索引。
UNIQUE INDEX table('mobilePhone','email)

这个很简单呀,选择邮箱注册则邮箱是唯一标识(用于登录),可以绑定多个手机。如果是手机注册,手机是唯一标识,理论上也可以绑定多个邮箱(但实际大多数禁止多个)。这种状态就可以通过手机和邮箱注册两个互不影响登录的账号。所以唯一性是必须的,但是不同类型的账号是可以存在你所谓的不唯一!好好理解下吧!

可以使用一个无意义的唯一数作为用户的索引,然后注册时判断使用的手机或邮箱是否已经注册过。如果没有注册过就生成一个新的唯一数作为这个新注册用户的索引。

邮箱和手机的唯一性通过注册时的判断来保证。

但是日后如果用户补充注册时未填写的手机或邮箱时,就需要考虑是否仍要保证唯一性了。

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 Installations- und Upgrade-Anleitung für Ubuntu und Debian

CakePHP Datum und Uhrzeit CakePHP Datum und Uhrzeit Sep 10, 2024 pm 05:27 PM

CakePHP Datum und Uhrzeit

CakePHP-Projektkonfiguration CakePHP-Projektkonfiguration Sep 10, 2024 pm 05:25 PM

CakePHP-Projektkonfiguration

CakePHP-Datei hochladen CakePHP-Datei hochladen Sep 10, 2024 pm 05:27 PM

CakePHP-Datei hochladen

CakePHP-Routing CakePHP-Routing Sep 10, 2024 pm 05:25 PM

CakePHP-Routing

Besprechen Sie CakePHP Besprechen Sie CakePHP Sep 10, 2024 pm 05:28 PM

Besprechen Sie CakePHP

CakePHP-Kurzanleitung CakePHP-Kurzanleitung Sep 10, 2024 pm 05:27 PM

CakePHP-Kurzanleitung

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein Dec 20, 2024 am 11:31 AM

So richten Sie Visual Studio-Code (VS-Code) für die PHP-Entwicklung ein

See all articles