这是一个代码挑战,而不是我正在进行的特定项目。
基本上,第一个文件'source.php'包含10个数组,用于存储用户名,密码和电子邮件,具有以下结构
<?php
$user['userOne'] = array(
'username' = > 'userone',
'password' => '12345abcdef',
'email' = > '123@xyz.com',
);
$user['userTwo'] = array(
....
?>
然后我有另一个php文件,它基本上包含一个带有电子邮件和密码输入文本框的HTML表单。
到目前为止我所管理的是在需要创建用户时创建数组。
现在我要做的是让用户在'source.php'中更改他们的电子邮件和密码,基本上完全替换现有的数组或修改更改的字段,即密码或电子邮件。
我现在想要将MySQL用作仅10个用户。我已经设法让用户使用他们的用户名和密码登录,我希望他们能够修改电子邮件和密码。
答案 0 :(得分:3)
我不想将MySQL用作仅10个用户
这很遗憾,因为外部数据持久性可能就是你想要的。如果您不想使用数据库,可以将数据存储在文件中,这很好。但那不是你现在正在做的事情。
您目前正在做的是将数据存储在代码中。要修改它,您有两种选择:
无论用户有多少,源代码和持久数据都需要保持独立。它可能似乎就像你想要将它们组合成小项目一样,但你真的真的不希望这样做。
MySQL很简单。如果您不希望在计算机上运行数据库服务的开销,则可以store the values in a text file。
答案 1 :(得分:1)
php文件是文本。你本质上是在询问如何使用php编写文本文件。基本文档会告诉你。对计算机程序结构的基本了解将告诉您,您需要迭代保存数据的结构并将其作为文本写入文件。
我真的不知道你在答案中找到了什么,没有人为你挑战。
其中一条评论中给出的最佳建议是:只是因为你可以做到,并不意味着它应该完成。想一想以下内容:
如果你的写操作被中断并且你留下一个空的或半写的无效php文件会怎么样?
您需要了解哪些原子文件原语运行代码提供的特定平台。 php是跨平台的事实在这里没有用,除非你找到一些提供这种原子(事务)文件修改的API或模块。
您还需要了解任何其他数据存储方式的原子/事务性质。如果您使用数据库,则不能在不阅读有关应如何使用的细则的情况下使用它,以便实际上提供您认为它提供的保证。
密码是明文 - 这是一个很大的,发臭的安全禁忌,所以忘记它现在。
您不希望可逆地加密密码。如果你可以解密密码,那么攻击你网站的人也会解密它们。
大多数人在任何地方都使用相同的密码。您网站上的违规行为将泄露其银行和Facebook密码。
您不希望存储密码的未加盐的哈希值 - 相当于公共密码的可逆加密。
您不希望使用与所有密码相同的固定盐值。
所有这些都必须得到解决,任何人都应该认为你的挑战解决方案不是标准的。