CREATE TABLE M_ADMIN (
ID        NUMBER(6) DEFAULT 0  NOT NULL,
UR_ID   VARCHAR2(20),
FORUM_ID  NUMBER(6) DEFAULT 0 ,
FL     NUMBER(1) DEFAULT 0);ALTER TABLE WHAM_ADMIN ADD ( 
PRIMARY KEY ( ID ));CREATE UNIQUE INDEX XPKWHAM_ADMIN ON WHAM_ADMIN ( ID );

解决方案 »

  1.   

    CREATE UNIQUE INDEX XPKWHAM_ADMIN ON WHAM_ADMIN ( ID );修改为CREATE UNIQUE INDEX XPKWHAM_ADMIN ON M_ADMIN ( ID );CREATE TABLE M_FORUMS (
    FID          NUMBER(6) NOT NULL,
    TOPICS       NUMBER(6) DEFAULT 0 ,
    POSTS        NUMBER(6) DEFAULT 0 ,
    PARENT_ID    NUMBER(6) DEFAULT 0 ,
    NAME         VARCHAR2(128),
    DESCRIPTION  VARCHAR2(1024),
    STATUS       VARCHAR2(10),
    PASSWORD     VARCHAR2(32),
    SORT_ORDER   NUMBER(3) DEFAULT 0 ,
    PICTURE      VARCHAR2(255),
    GAME_KIND    VARCHAR2(1) DEFAULT '1');ALTER TABLE WHAM_FORUMS ADD ( 
    PRIMARY KEY ( FID ));CREATE UNIQUE INDEX XPKWHAM_FORUMS ON M_FORUMS ( FID );
      

  2.   

    我觉得没有必要那么多表嘛,就在用户表里面多加一个perm字段,把权限作为字符串存在里面,用的时候explode(),作为数组,赋给session,每个操作前加一个判断函数就行:)很多论坛这么做的,可以参考参考
      

  3.   

    谢谢楼上两位,我在做一个文章发布系统,想找个好一点的关于权限的解决方法
    我现在的想法是 把管理员先单独提出来
    这样就剩下斑竹和编辑
    比如用户a,对板块a有a权限和板块b的c权限,表示如下:
             a    b     c    d
    ban_a    o    x     x    x
    ban_b    x    x     o    x
    ban_c    x    x     x    x
    用户b是板块c的斑竹,则他的权限表示如下
             a    b     c    d
    ban_a    x    x     x    x
    ban_b    x    x     x    x
    ban_c    o    o     o    o
    这样的程序该怎么写?数据库怎么建呢?
      

  4.   

    我现在是这样建的,不知道合适不
    把板块和板块权限放在数组里,如
    $bankuai=array(ban_a,ban_b,ban_c);
    板块权限数组 $ban_quanxian=array(a,b,c,d)
    然后建立一个权限表,字段为(user_id,buankuai_id,banquanxian_id)
    判断的时候就要 分两步了,先判断是否在该板块,然后看他是否有响应的权限
      

  5.   

    管理员就不比说了,斑竹可以在指定的时候与那个版块直接挂钩.编辑的最麻烦,可以考虑用楼主的做法.
    一个基本用户表(包含权限类别字段),管理员表,斑竹表,编辑表.斑竹表里存版块名就可以了,编辑表里设置一个字段存入字符串,类似|||bankuai_id,action_id|||.....应该可以达到你的要求.
    hb_lv at hotmail dot com
      

  6.   

    权限和权限组是两个概念对同组的用户可以给一定的权限这些权限是默认继承的但除此之外,每个用户又有自己的权限定义,这样会相对容易控制一些如果不需要太复杂,可以参考linux的权限控制机制。那就不但有组的概念,还有所有人的概念了。即linux中的chown概念。即每个发帖人即是所有人,所有人有一切权限,当然这个一切,也是可定制的你可以专门建一个表来存放:所有人,版主,超级版主,管理员,全体。这几个是基本的,可增加特殊组。在论坛中,帖子中记录的发帖人即是所有人,继承所有人组的权限,除此之外的人如要修改编辑即可对应用户表中给出的相应权限代码,如给某用户某权限,即添加某权限,用户表另一字段中如给某用户某组,则继续该组的权限。一家之言,仅供参考。Matrix@Two_Max at 2004-12-31
      

  7.   

    http://community.csdn.net/Expert/topic/3301/3301579.xml?temp=.5187189
    人员等级无限分类。
    权限无限分类。