【问题标题】:Creating account on a website [closed]在网站上创建帐户 [关闭]
【发布时间】:2011-09-11 09:53:30
【问题描述】:

我正在创建一个网站。它不是一个 wordpress 网站。我想为访问我的网站的用户创建用户名和密码。注册。 我是否应该为此使用数据库? 还是网络服务器提供的帐户?我对此一无所知。 此外,当他成功登录时,我应该如何为每个用户显示不同的页面,显示他的姓名和个人资料 我知道需要PHP,但如何。? 我在互联网上搜索但没有发现任何有用的东西

【问题讨论】:

  • 有免费和付费的 Wordpress 插件;考虑查看插件存储库
  • 不,你不需要 PHP。例如,您也可以使用 Python。
  • @Pekka 这不是 WP 网站。我提到过
  • @Sharpzain 啊,我看错了“不”。

标签: php asp.net html mysql


【解决方案1】:

您绝对应该为此使用数据库。有许多提供这种功能的 php 库和框架,请查看这个问题 Role Based Access Control 以获得一些有用的指示。

网络上有许多教程向您展示了这些机制的工作原理,当然还有 SO 问题的答案中提到的不同库的示例页面。

一个完整的例子可以帮助你理解整个机制,可以在here找到一个扩展版本here

对于存储,除了数据库之外,您还可以使用文件。例如,Linux 通常使用文件来存储用户凭据(/etc/passwd 用于识别数据,/etc/shadow 用于密码,etc/groups 用于用户组信息)。虽然它比数据库更难做正确 - 需要管理并发写入访问,您必须保护文件不被下载,等等。

不过,对于文件和数据库,有一个常数:永远不要以明文形式存储密码,而是使用“salted hash”。这样,如果您的系统被破解,至少您的用户密码是安全的。

【讨论】:

  • 但是如何为每个用户显示不同的页面?
  • 一旦用户登录,他的身份将通过会话变量等可用,并且通过获取这些变量,您的程序可以知道用户是谁并决定显示什么。
  • 好的,我明白了..但是请告诉我有多少种可能的创建帐户的方法?通过数据库和...?
  • 我的意思是,当我们注册一个域时,网络服务器会给我们 50 个帐户。我们可以使用它们吗?
  • 对我来说最奇怪的是网站托管包会包含一些访问控制机制(至少我从未见过这样的包)。我在这里猜测,但我认为这些是 50 个带有随附帐户的邮箱。不,你不能使用那些。
猜你喜欢
  • 1970-01-01
  • 2015-06-26
  • 1970-01-01
  • 2023-04-01
  • 2016-08-10
  • 1970-01-01
  • 1970-01-01
  • 2017-11-30
  • 1970-01-01
相关资源
最近更新 更多