| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 990 人关注过本帖
标题:入门级提问--权限分配
只看楼主 加入收藏
snkev
Rank: 2
等 级:论坛游民
帖 子:10
专家分:10
注 册:2009-11-30
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:10 
入门级提问--权限分配
Login为登录窗体,Form1为主窗体. button1为Login窗体中的登录按钮

为什么无论用任何用户登录,都是管理员的用户界面?
小弟刚入门,想了好久仍然没有找到原因,还望各位赐教~




                  private void button1_Click(object sender, EventArgs e)
             {
                           
                            ...............
                             
                            conn.Open();
                             
                            ...............

                            string userlimit = "select userlimit form UserInfo where userid='"+textBox1.Text.Trim()+"'and userpwd='"+textBox2.Text.Trim()+"'";
                            Form1 form1 = new Form1();
                            if (userlimit=="0")//学生权限
                                
                            {      
                                
                                form1.toolStripButton1.Enabled = false;
                                form1.toolStripButton2.Enabled = false;
                                form1.toolStripButton3.Enabled = false;
                                form1.toolStripButton4.Enabled = true;
                                form1.toolStripButton5.Enabled = true;
                                form1.toolStripButton6.Enabled = true;
                                form1.toolStripButton7.Enabled = true;
                                form1.Show();
                                this.Visible=false;
                                   
                            }
                            else if (userlimit == "1")//教师权限
                            {
                                form1.toolStripButton1.Enabled = false;
                                form1.toolStripButton2.Enabled = false;
                                form1.toolStripButton3.Enabled = true;
                                form1.toolStripButton4.Enabled = true;
                                form1.toolStripButton5.Enabled = true;
                                form1.toolStripButton6.Enabled = true;
                                form1.toolStripButton7.Enabled = true;
                                form1.Show();
                                this.Visible = false;
                            }
                            else//管理员权限
                            {
                                form1.Show();
                                this.Visible = false;
                            }
                                

                                   .......
                }

[ 本帖最后由 snkev 于 2010-1-30 20:03 编辑 ]
搜索更多相关主题的帖子: 提问 入门 权限 
2010-01-30 17:51
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
收藏
得分:0 
userlimit的值呢?
2010-01-30 18:02
aspic
Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17
等 级:贵宾
威 望:51
帖 子:2258
专家分:8050
注 册:2008-2-18
收藏
得分:2 
程序代码:
    public partial class frmLogin : Form
    {
        public frmLogin()
        {
            InitializeComponent();
        }

        private void uiButton1_Click(object sender, EventArgs e)
        {
            Mian(0);
        }
        private void Mian(int User)
        {
            frmMain frm = new frmMain();
            if (User == 0)
            {
                frm.toolStripButton3.Enabled = false;
                frm.Show();
                this.Visible = false;
            }
            else if(User == 1)
            {
                frm.ShowDialog();
                this.Visible = false;
            }
        }

        private void uiButton2_Click(object sender, EventArgs e)
        {
            Mian(1);
        }
2010-01-30 18:11
snkev
Rank: 2
等 级:论坛游民
帖 子:10
专家分:10
注 册:2009-11-30
收藏
得分:0 
回复2楼:

userlimit的值不是已经赋给它了吗?

然后再用if语句判断userlimit是否与数据库中用户权限的匹配,不是吗?

 string userlimit = "select userlimit form UserInfo where userid='"+textBox1.Text.Trim()+"'and userpwd='"+textBox2.Text.Trim()+"'";

textBox1.Text是用户名,textBox2.Text是密码

3楼的方法好像和我想一样,但是一共用到了2个Button,我想直接点击登录按钮就完成权限分配...


感谢赐教


2010-01-30 19:59
saitor
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:5
帖 子:373
专家分:1520
注 册:2009-5-18
收藏
得分:0 
我想说的是你的userlimit是"select userlimit form UserInfo where userid='"+textBox1.Text.Trim()+"'and userpwd='"+textBox2.Text.Trim()+"'";这段字符串,肯定每次都是

else//管理员权限
                            {
                                form1.Show();
                                this.Visible = false;
                            }
这段了,
2010-01-30 21:09
snkev
Rank: 2
等 级:论坛游民
帖 子:10
专家分:10
注 册:2009-11-30
收藏
得分:0 
回复 5楼 saitor
为什么?能说的详细点吗?谢谢
2010-01-30 21:27
saitor
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:5
帖 子:373
专家分:1520
注 册:2009-5-18
收藏
得分:0 
因为你跟本没有去查过数据库啊,你的userlimit就是这段拼接的字符串
2010-01-30 21:47
A_Aaron
Rank: 1
来 自:顺德
等 级:新手上路
帖 子:1
专家分:0
注 册:2010-1-29
收藏
得分:0 
userlimit是什么值呀 请理清下

众人皆醒 我独醉
2010-01-30 21:57
snkev
Rank: 2
等 级:论坛游民
帖 子:10
专家分:10
注 册:2009-11-30
收藏
得分:0 
以下是引用saitor在2010-1-30 21:47:32的发言:

因为你跟本没有去查过数据库啊,你的userlimit就是这段拼接的字符串
我明白问题了,那要怎么执行呢?我对SQL操作类不是很熟悉
2010-01-31 11:17
saitor
Rank: 10Rank: 10Rank: 10
等 级:青峰侠
威 望:5
帖 子:373
专家分:1520
注 册:2009-5-18
收藏
得分:8 
SqlCommand sqlcommand=new SqlCommand(userlimit ,con);
SqlConnection con = new SqlConnection(sqlcon);
            SqlCommand sqlcommand = new SqlCommand(userlimit, con);
            SqlDataReader sr = sqlcommand.ExecuteReader();
           while(sr.Read())
            {
                userlimit = sr["userlimit"].ToString();
            }
然后再判
2010-01-31 17:19
快速回复:入门级提问--权限分配
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.028307 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved