为数据库插入创建唯一的用户名

时间:2014-08-12 22:40:06

标签: coldfusion url-rewriting

我将唯一的名称插入到用户提交的数据库表中作为其用户名。

当通过表单提交名称时,我的ColdFusion代码会检查数据库以查看该名称是否已存在。如果确实存在,则通过向其添加序号使其成为唯一的用户名。

我的问题是,虽然检查数据库中的名称冲突很容易,但我也不希望该名称与我站点中任何文件夹,.cfm文件或.html文件的名称冲突。

目前我正在使用一个简单的ListFindNoCase('folder1,folder2,folderN', username)函数来检查冲突,但这是手动完成的。每当我向网站添加新文件或文件夹时,我都必须将其添加到此列表中。这不是一个好方法。

如何获取我网站中所有内容的列表并将其设置为分隔列表,然后执行ListFindNoCase()功能以检查用户名是否在该内容列表中?这甚至是一种实用的方式吗?

1 个答案:

答案 0 :(得分:1)

'folder1,folder2,folderN'转换为返回文件夹列表的getter函数。

然后您可以决定如何收集文件夹列表。

以下是我能想到的几种方法:

  • 某些全局配置文件,或者如果您使用coldbox,请使用coldbox的config.cfc设置
  • 执行directoryList()并动态计算出来,并可选择缓存结果
  • 将禁用的文件夹名称存储在DB中,并使用sql
  • 检查数据库