如何使用codeigniter将用户从第1列添加到第2列?

时间:2013-05-10 06:17:23

标签: php javascript jquery ajax codeigniter

如何使用codeigniter将用户从第1列添加到第2列?

第1列包含所有用户名,第2列是空行


|-----|--------|------------|
|Users|        |Moderators  |
|-----|--------|------------|
|Mark |        |____________|
|JOhn |        |____________|
|Xyz  |        |____________|
|ABC  |->Add   |____________|
|you  |->Remove|____________|
|Me   |->Undo  |____________|
|HIm  |        |____________|
|WE   |        |____________|
|123  |        |____________|
|321  |        |____________|
|-----|--------|------------|

       Save OPtion 

有两列,第1列包含所有用户,第2列用于主持人。如果管理员选择其中一个用户然后单击添加,则用户必须位于第2列

由于我的声誉很低,我无法发布图片......所以我发布了一个实时示例。 (Screenshot

有关于它的任何教程吗? 谢谢

3 个答案:

答案 0 :(得分:1)

左侧像

<select name="users" multiple>
  <option value="mark">Mark</option>
  <option value="john">John</option>
  <option value="zyx">XYZ</option>
  <option value="abc">ABC</option>
</select>

您可以使用表单提交,在主持人表格中插入所选内容并在页面

中获取并显示主持人用户

如果您不需要重新加载页面 使用java脚本 在主持人col

中显示所选值

这是现场解决方案 http://jsfiddle.net/asvignesh/RMgQq/

答案 1 :(得分:0)

我认为你写的是colummns而不是2个单独的表。尽管这是一个奇怪的解决方案,你可以更新你的表。

转到其他列

UPDATE `yourtablename` SET MODERATORS=USERS;
UPDATE `yourtablename` SET USERS=NULL;

移回其他列

UPDATE `yourtablename` SET USERS=MODERATORS;
UPDATE `yourtablename` SET MODERATORS=NULL;

但正如我写的那样很奇怪。如果您有两个表格,则应使用 INSERT INTO ,请记住,对于此类查询,您应使用交易

更好的方法是创建类似 ACL(访问控制列表)的内容,并设置一些角色资源

你需要三张桌子。

角色可以是

  • 管理员
  • 主持人
  • 用户
  • Supermoderator

资源可以是

  • 修改文章
  • 查看文章
  • 删除文章

然后,您可以在两个表和用户之间编写连接。用户和角色之间也应该有连接。你应该把表检查用户是否是管理员。例如,结构

user_id, role_id

也是为资源分配角色的表

role_id, resource_id

然后你可以简单地检查:

$user->isAllowed("ModifyArticle");

这是最好的解决方案。

如果你想简化它,你可以在你的用户字段中放置标志来检查用户是管理员还是管理员,或者你可以在你的用户表中添加一些字段,如:“isAdmin”,“isModerator”但它的设计很糟糕表。另请查看Zend_ACL

答案 2 :(得分:-1)

$sql = "INSERT INTO moderators SET ModUserField='" . $user_field[1] . "', ModUserField2='" . $user_field[0] . "'";

$sql = "DELETE FROM users WHERE UserID=" . $user_id;