kchum
V2EX  ›  问与答

像淘宝的多种登录方式(手机/会员名/邮箱)有没有比较好的实现方式?

  •  
  •   kchum · Jun 12, 2014 · 3291 views
    This topic created in 4403 days ago, the information mentioned may be changed or developed.
    RT
    手机/会员名/邮箱,存放在不同的字段

    我用=号查了3个字段(WHERE mobile='xxx' OR username='xxx' OR email='xxx'),
    然后就循环验证密码MD5。

    说说你的实现方式吧。
    3 replies    2014-06-12 19:01:34 +08:00
    likexian
        1
    likexian  
       Jun 12, 2014   ❤️ 2
    mobile username email 的格式本身就不同,一上来根据规则就可以直接一个where
    a591826944
        2
    a591826944  
       Jun 12, 2014   ❤️ 1
    楼上正解
    Sunyanzi
        3
    Sunyanzi  
       Jun 12, 2014   ❤️ 1
    这问题来的真是时候 ... 前两天刚写完一模一样的需求 ...

    淘宝的用户名不允许为全数字也不允许含有 @ 符号 ...

    也就是如果用户登录输入的是全数字且不符合手机号规则可以直接报错 ...

    同理含有 @ 符号却不符合 Email 规则的也可以直接报错 ... 连查询都不用 ...

    不在这两种情况的 ... 根据用户输入内容的特征查询不同的位置即可 ...
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1225 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 17:34 · PVG 01:34 · LAX 10:34 · JFK 13:34
    ♥ Do have faith in what you're doing.