用户login里之后需要从数据库选择相应记录,在gridview中显示。
login表有username,password,company;
session存储了username;
登录判定username和password之后,进入主页面。
在主页面中使用了select company from login where username=username;
定义了public string company;
主页面中有gridview控件,girdview是需要显示data表中的数据,条件是列company=public string company
gridview控件的where 条件是:(我不知道配置得是否正确)
列:company
运算符:=
源:None (还有其他一些control,form,cookie,querystring等等,我不知道选哪个)
参数属性:值:company不知道我的配置是否正确,求各位大大指点。
login表有username,password,company;
session存储了username;
登录判定username和password之后,进入主页面。
在主页面中使用了select company from login where username=username;
定义了public string company;
主页面中有gridview控件,girdview是需要显示data表中的数据,条件是列company=public string company
gridview控件的where 条件是:(我不知道配置得是否正确)
列:company
运算符:=
源:None (还有其他一些control,form,cookie,querystring等等,我不知道选哪个)
参数属性:值:company不知道我的配置是否正确,求各位大大指点。
对gridview配置数据源已经配置过了,选择显示的是data表中需要显示的列
另外用的是sqlcommand获取的另一个表login中的此时登录的用户的company。company是一个public的string.
对gridview配置数据源时的where条件需要使得data表中的company列的值等于这个public的company。
1.是否已经绑定数据库,如果说没有绑定,请先学习绑定数据,也就是2L说的。
2.如果已经成功绑定,那么检查你写的CMD语句。从以上方面检查吧。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="talenttype" HeaderText="talenttype"
SortExpression="talenttype" />
<asp:BoundField DataField="name" HeaderText="name" SortExpression="name" />
<asp:BoundField DataField="haoma" HeaderText="haoma" SortExpression="haoma" />
<asp:BoundField DataField="mobile" HeaderText="mobile"
SortExpression="mobile" />
<asp:HyperLinkField DataNavigateUrlFields="haoma"
DataNavigateUrlFormatString="personinfo.aspx?id=haoma" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [talenttype], [name], [haoma], [mobile] FROM [talent_apply] WHERE ([cnamefkey] = @cnamefkey)">
<SelectParameters>
<asp:Parameter DefaultValue="companyname" Name="cnamefkey" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="talenttype" HeaderText="talenttype"
SortExpression="talenttype" />
<asp:BoundField DataField="name" HeaderText="name" SortExpression="name" />
<asp:BoundField DataField="haoma" HeaderText="haoma" SortExpression="haoma" />
<asp:BoundField DataField="mobile" HeaderText="mobile"
SortExpression="mobile" />
<asp:HyperLinkField DataNavigateUrlFields="haoma"
DataNavigateUrlFormatString="personinfo.aspx?id=haoma" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [talenttype], [name], [haoma], [mobile] FROM [talent_apply] WHERE ([cnamefkey] = @cnamefkey)">
<SelectParameters>
<asp:Parameter DefaultValue="companyname" Name="cnamefkey" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
public string companynanme;
protected void Page_Load(object sender, EventArgs e)
{
string id = Session["uname"].ToString();
SqlConnection Myconnection = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=test;User Id=sa;Password=test;");
Myconnection.Open();
string sql = "select company from companylogin where name='" + id + "'";
SqlCommand cmd = new SqlCommand(sql , Myconnection);
companynanme = cmd.ExecuteScalar().ToString();
Myconnection.Close(); }
跟踪一下companynanme的值是什么????????
经测试<%=companynanme %>可以正确显示。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="talenttype" HeaderText="talenttype"
SortExpression="talenttype" />
<asp:BoundField DataField="name" HeaderText="name" SortExpression="name" />
<asp:BoundField DataField="haoma" HeaderText="haoma" SortExpression="haoma" />
<asp:BoundField DataField="mobile" HeaderText="mobile"
SortExpression="mobile" />
<asp:HyperLinkField DataNavigateUrlFields="haoma"
DataNavigateUrlFormatString="personinfo.aspx?id=haoma" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [talenttype], [name], [haoma], [mobile] FROM [talent_apply] WHERE ([cnamefkey] = @cnamefkey)">
<SelectParameters>
<asp:Parameter DefaultValue="companyname" Name="cnamefkey" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
<%=companynanme %>
2.CMD不会自己写,是在数据源里配置的,但是自己不知道怎么配置,也不知道配置得正确与否。
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="SqlDataSource1">
<Columns>
<asp:BoundField DataField="talenttype" HeaderText="talenttype"
SortExpression="talenttype" />
<asp:BoundField DataField="name" HeaderText="name" SortExpression="name" />
<asp:BoundField DataField="haoma" HeaderText="haoma" SortExpression="haoma" />
<asp:BoundField DataField="mobile" HeaderText="mobile"
SortExpression="mobile" />
<asp:HyperLinkField DataNavigateUrlFields="haoma"
DataNavigateUrlFormatString="personinfo.aspx?id=haoma" />
</Columns>
</asp:GridView>
<asp:SqlDataSource ID="SqlDataSource1" runat="server"
ConnectionString="<%$ ConnectionStrings:testConnectionString %>"
SelectCommand="SELECT [talenttype], [name], [haoma], [mobile] FROM [talent_apply] WHERE ([cnamefkey] = @cnamefkey)">
<SelectParameters>
<asp:Parameter DefaultValue="companyname" Name="cnamefkey" Type="String" />
</SelectParameters>
</asp:SqlDataSource>
1.@cnamefkey的值在哪里得到的? 此句不加where 条件。
2..cs public string companynanme;
protected void Page_Load(object sender, EventArgs e)
{
string id = Session["uname"].ToString();
SqlConnection Myconnection = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=test;User Id=sa;Password=test;");
Myconnection.Open();
string sql = "select company from companylogin where name='" + id + "'";
SqlCommand cmd = new SqlCommand(sql , Myconnection);
companynanme = cmd.ExecuteScalar().ToString();
Myconnection.Close(); }
//这些东西有什么用,你要准备干吗?
<SelectParameters>
<asp:Parameter DefaultValue="companyname" Name="cnamefkey" Type="String" />
</SelectParameters>2..cs中是希望给string companyname赋值,经测试是可以成功赋值的;
另外谢谢各位看帖回帖! public string companynanme;
protected void Page_Load(object sender, EventArgs e)
{
string id = Session["uname"].ToString();
SqlConnection Myconnection = new SqlConnection("Data Source=localhost\\SQLEXPRESS;Initial Catalog=test;User Id=sa;Password=test;");
Myconnection.Open();
string sql = "select company from companylogin where name='" + id + "'";
SqlCommand cmd = new SqlCommand(sql , Myconnection);
companynanme = cmd.ExecuteScalar().ToString(); string sql2 = "select talenttype,name,haoma,mobile from talent_apply where cnamefkey='" + companynanme + "'";
DataSet ds = new DataSet();
SqlDataAdapter sda = new SqlDataAdapter(sql2, Myconnection);
sda.Fill(ds);
DataTable dt = ds.Tables[0];
GridView1.DataSource = dt;
GridView1.DataBind();
Myconnection.Close(); }