在哪里存储性别和出生年份等信息?

时间:2010-06-02 21:11:29

标签: php mysql database

我有用户,我需要他们指定性别(男性,女性)和出生年份(1930年,1931年...... 1999年,2000年)。

我想知道我应该在哪里存储这些值:

  1. 在数据库中?
  2. 在php文件中?
  3. 如果我将它们存储在数据库中,我必须先手动创建所有条目。但好处是用户表会有约束,所以性别字段永远是男性或女性,不可能是别的。

    如果我将它们存储在php文件中(例如,作为html),那么我可以轻松添加/删除值。但是一个骗局是我没有数据库中的约束,所以另一个值可以被误存储为性别,即使我可以在php后端添加验证,所以即使有人黑客攻击html它也不存储,除非它是男性或女性

    这样做的最佳做法是什么?

    感谢

5 个答案:

答案 0 :(得分:2)

您现在的数据格式是什么?您可以自动将其插入数据库。应该是phpclasses.org上的一些好的课程会有所帮助。肯定值得在您的服务器上安装phpMyAdmin(或者您可能已经拥有它)。使数据库的使用变得更加容易。

答案 1 :(得分:1)

使用数据库,因为您无疑会想要稍后查询记录并使用HTML(或文本文件)来处理此类事情会很麻烦。正如戴夫所说,稍微前期工作可以节省你的培根!

答案 2 :(得分:1)

我肯定会使用数据库,因为这是数据库的主要内容,用于存放数据。正如您所说,您可以添加限制,扩展收集的数据(即地址,电话号码,用户喜欢/不喜欢),以及使用数据库更轻松地搜索/查询数据。至于初始条目,有很多方法可以使用sql将数据导入数据库。可能有一种非常简单的方法可以让您当前的用户进入数据库而无需太多工作。

答案 3 :(得分:1)

使用数据库,轻松调用...

如果你正在寻找那种交易,那么Navicat就是一个gui炸弹。

答案 4 :(得分:0)

如果我理解正确你需要存储1997年,1998年,1999年等......“男性”,“女性”价值观,而不是完整的用户行。如果以这种方式,我认为最好的解决方案是将其存储在外部文件中,如ini,xml,php(数组)等...

一个很好的选择是从数据库元数据生成该文件。例如,如果您有一个枚举字段ENUM('男性','女性'),那么您将以这种方式生成选项。实际上,您可以生成默认输入大小,数字或日期验证器等...

我认为最好的解决方案是将后端数据存储区与视图分开。如果您需要翻译页面以便需要显示“Masculino”而不是“Male”,但数据库中的值是“男性”,该怎么办?