一个简单问题求教!!!!!

yangtu86 2004-09-01 02:59:49
关于用户登陆!
我有两个表(用户表,权限表)
其中用户表有字段(姓名,密码,权限id,时间等),权限表(权限id,权限说明,等等)
<asp:BoundColumn DataField="user" SortExpression="user" HeaderText="姓名"></asp:BoundColumn>
<asp:BoundColumn DataField="pass" SortExpression="pass" HeaderText="密码"></asp:BoundColumn>
<asp:BoundColumn DataField="qx" SortExpression="qx" HeaderText="权限"></asp:BoundColumn>

主要功能实现:a.aspx提交用户名、密码,转到b.aspx判断权限、给session("user")赋值并转到c.aspx
如何传参数给b.aspx,sql如何写??
如何绑定datagrid,在datagrid中把 姓名,密码,权限说明 这三个列出来??

--------------------------------------------------------------------------------------
菜鸟一个菜鸟一个菜鸟一个菜鸟一个菜鸟一个菜鸟一个菜鸟一个
...全文
115 15 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
chagel 2004-09-01
  • 打赏
  • 举报
回复
我是给他一个Response的例子,可以用Requset.QueryString属性接收。你也可以完全用asp的风格用另一个页面处理,在form中action指定页面。当然不会推荐在asp.net中这么处理。

不是要先判断登录信息,在取出权限吗?所以我说用两个sql。

Fill多个构造方法,可以只用DataSet一个参数。



yangtu86 2004-09-01
  • 打赏
  • 举报
回复
如果是两个表没有关联字段,但是要在一个datagrid中显示出来呢??
哪又如何写呢?
yangtu86 2004-09-01
  • 打赏
  • 举报
回复
To:Edison621(柏拉图的永恒)
这个功能比较简单是没有必要,但是如果涉及5、6个表那不可能光写一个sql语句吧??就算成功了,以后维护改动之类的那不是麻烦死了.....
Edison621 2004-09-01
  • 打赏
  • 举报
回复
我不是告诉你了,可以不用这个参数,缺省。
然后后面用索引号,就是0。
比如:
da1.Fill(DS1);
Dim Source As DataView = DS1.Tables(0).DefaultView;

对了,在C#中table后面是方括号,如:DS1.Tables[0].DefaultView,是不是VB中用圆括号?
yangtu86 2004-09-01
  • 打赏
  • 举报
回复
To:fly_miss(新年新气象) ---->这个当然知道啦.

sql = "select name,password,qxsm from 用户表 a, 权限表 b where a.qx=b.qx"
da1 = New System.Data.SqlClient.SqlDataAdapter(sql,conn)
DS1 = New DataSet
da1.Fill(DS1, "????") -------------------------->(这里该怎么写,??)
Dim Source As DataView = DS1.Tables("????").DefaultView--------->(如上)
yingshis 2004-09-01
  • 打赏
  • 举报
回复
up
Edison621 2004-09-01
  • 打赏
  • 举报
回复
为什么非要两个sql?不理解
Edison621 2004-09-01
  • 打赏
  • 举报
回复
其实怎么写都可以,呵呵,你可以干脆用缺省,如下:
da1.Fill(DS1);
Dim Source As DataView = DS1.Tables(0).DefaultView;
yangtu86 2004-09-01
  • 打赏
  • 举报
回复
如果我写两个sql语句,那么datagrid如何绑定??
sql="select * from 用户表 where user='"&username&"' and pass='"&password&"'"
qx_id=rs("权限id")
sql2="select * from 权限表 where qx_id='"&qx_id&"'"


另外---a.aspx?user=aaa&pass=bbb传到b.aspx
如何在b.aspx中接收user、pass???我用的是vb。
和asp一样用request吗?????
fly_miss 2004-09-01
  • 打赏
  • 举报
回复
da1.Fill(DS1, "用户表") -------------------------->(这里的"用户表"是DataTable的名字);

Edison621(柏拉图的永恒) 的那样写的是SQL语句
应该
sql = "select * from 用户表"

==》
sql = "select name,password,qxsm
from 用户表 a, 权限表 b
where a.qx=b.qx
"
Edison621 2004-09-01
  • 打赏
  • 举报
回复
地质栏里显示出来user和pwd那还得了?呵呵
yangtu86 2004-09-01
  • 打赏
  • 举报
回复
Dim DS1 As DataSet
Dim da1 As System.Data.SqlClient.SqlDataAdapter
Dim sql As String
sql = "select * from 用户表"
da1 = New System.Data.SqlClient.SqlDataAdapter(sql,conn)
DS1 = New DataSet
da1.Fill(DS1, "用户表") -------------------------->(这里的"用户表"什么意思?如果照Edison621(柏拉图的永恒) 的那样写,那该添什么??)
Dim Source As DataView = DS1.Tables("用户表").DefaultView--------->(如上)

Source.Sort = SortField
datagrid1.DataSource = Source
datagrid1.DataBind()
chagel 2004-09-01
  • 打赏
  • 举报
回复
用户,密码检查以及权限获取可以放在同一个aspx页面,当然你也可以分两个页面,传值参给b.aspx。
Response.Redirect("b.aspx?user=123&pwd=123");

sql不就两次select吗?

DataReader或者DataSet填充数据后,DataGrid.Bind();看MSDN吧。
Edison621 2004-09-01
  • 打赏
  • 举报
回复
select name,password,qxsm
from 用户表 a, 权限表 b
where a.qx=b.qx
Edison621 2004-09-01
  • 打赏
  • 举报
回复
1。既然你知道怎么用Session,可以用Session传给b.aspx,也可以用Cookie;
2。可以通过Sql语句来实现,使返回的结果集中为用户表的姓名,密码和权限表的权限说明。

62,243

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧