Php 用您的用户名或电子邮件填写登录字段

Php 用您的用户名或电子邮件填写登录字段,php,html,sql,authentication,Php,Html,Sql,Authentication,我在我的网站上建立了一个注册和登录系统。现在我问自己一个我无法回答的问题。我的注册页面上有三个输入: 用户名 电子邮件 密码 我现在希望在我的登录页面上有两个输入。第一个应该是密码,第二个是电子邮件或用户名。我现在想知道如何使用MySQL数据库实现这一点 我对PHP还是很陌生。我希望有人能回答,我没有在堆栈溢出上找到任何东西。如果您的数据库中有两个名为“用户名”和“电子邮件”的字段,并且您希望根据用户可能输入了其中一个值来检查该用户是否存在,那么您可以编写如下查询: SELECT * FROM

我在我的网站上建立了一个注册和登录系统。现在我问自己一个我无法回答的问题。我的注册页面上有三个输入:

  • 用户名
  • 电子邮件
  • 密码
  • 我现在希望在我的登录页面上有两个输入。第一个应该是密码,第二个是电子邮件或用户名。我现在想知道如何使用MySQL数据库实现这一点


    我对PHP还是很陌生。我希望有人能回答,我没有在堆栈溢出上找到任何东西。

    如果您的数据库中有两个名为“用户名”和“电子邮件”的字段,并且您希望根据用户可能输入了其中一个值来检查该用户是否存在,那么您可以编写如下查询:

    SELECT *
    FROM users
    WHERE username = ? OR email = ?
    
    它将返回参数值与用户名或电子邮件列内容匹配的任何行

    (显然,要根据您的确切表名和列名进行调整。)

  • 首先,当您发布包含2个字段的表单时,请尝试验证输入是否为电子邮件类型
  • 这是你怎么做的
  • 现在您知道了要传递的值对应的列
  • 如果用户名不是电子邮件类型,请使用用户名列
  • 如果用户名类型为电子邮件,请使用电子邮件列

  • 相应地准备您的查询

    好的,谢谢您的快速回答。事实上,我已经在使用这个语句,因为这对于准备好的请求是必要的。然而,我不知道这是如此容易解决。我最初有这个想法,只是不知道如何实施它。我来试试。