我是php编程的新手。我在一个小网站上为朋友工作,他将上传他的作品。 我已经实施了一个简单的管理部分,受密码保护,他可以管理网站的内容。 密码使用" password_hash()"进行哈希处理。并存储在sqlite db中。 实际上,出于测试目的,我使用sql手动创建了用户的凭证,并使用从终端创建的密码。 当网站在线时,有没有办法(或最佳做法)让我的朋友在不使用临时密码的情况下创建自己的密码?
这可能是一个奇怪的问题,但在我看来,通过终端创建第一个密码并用sql保存它是如此复杂......有没有更好的方法?
谢谢
答案 0 :(得分:0)
如果我理解正确,当你发布项目时,应该没有为管理员帐户设置密码,并且首次验证时,应该要求你的朋友设置密码? 如果那是你的项目应该做的,我会这样做:
1:使用邮件和密码字段构建身份验证表单
2:在Auth尝试时:
2.A:如果没有提供密码且DB中的邮件相关帐户还没有密码, 显示用户将设置密码的新字段。使用此数据生成散列密码(password_hash($ _ POST ['密码'])并将其保存到数据库中。
2.B:如果提供密码,请检查邮件和密码(基本身份验证行为)
3:验证用户