Hi dear
My problem is how to get the user data that you have specified by his personal Email .. where you log on to the user on another page !
When he enters his page in case the email is correct, his data appears.
But the error here is that it does not bring me anything from the database !
Where is the problem?
This is Code :
<asp:GridView ID="GridView" runat="server" DataKeyNames="Email" GridLines="None" Style="width: 100%;text-align:center; direction: ltr;">
<Columns>
<asp:TemplateField HeaderText="Member Name" ItemStyle-Width="260" >
<ItemTemplate>
<div style="float:left; padding-left: 10px;">
<asp:Label runat="server" ID="lblMemberImage" Text='<%# Eval("MemberImage")%>' ></asp:Label>
<asp:Label ID="lblEnglishName" runat="server" Text='<%# Eval("EnglishName")%>' style="margin-top: 15px; float:left;"></asp:Label>
<asp:Label ID="lblArabicName" runat="server" Text='<%# Eval("ArabicName")%>' style="margin-top: 15px; float:left;"></asp:Label>
</div>
</ItemTemplate>
<ItemStyle Width="260px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Email" ItemStyle-Width="50">
<ItemTemplate>
<asp:Label ID="lblEmail" runat="server" Text='<%# Eval("Email")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="City-Country" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label ID="lblCountry" runat="server" Text='<%# Eval("CityCountry")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="150px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Date of membership" ItemStyle-Width="180">
<ItemTemplate>
<asp:Label ID="lblDateofmembership" runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "Date", "{0:MMM dd, yyyy}")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="180px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Phone" ItemStyle-Width="150">
<ItemTemplate>
<asp:Label ID="lblPhone" runat="server" Text='<%# Eval("Phone")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="150px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="Password" ItemStyle-Width="50">
<ItemTemplate>
<asp:Label ID="lblPassword" runat="server" Text='<%# Eval("Password")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="A Level" ItemStyle-Width="50">
<ItemTemplate>
<asp:Label ID="lblA" runat="server" Text='<%# Eval("AName")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="B Level" ItemStyle-Width="50">
<ItemTemplate>
<asp:Label ID="lblB" runat="server" Text='<%# Eval("BName")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>
<asp:TemplateField HeaderText="SB Level" ItemStyle-Width="50">
<ItemTemplate>
<asp:Label ID="lblC" runat="server" Text='<%# Eval("CName")%>'></asp:Label>
</ItemTemplate>
<ItemStyle Width="50px" />
</asp:TemplateField>
</Columns>
</asp:GridView>
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
If Not IsPostBack Then
If Session("Email") = "" Then
Response.Redirect("Login-Member.aspx")
Else
Dim conn As New SqlConnection("Data Source=...")
conn.Open()
Dim da As New SqlDataAdapter("SELECT Member.Email FROM Member Where Email=@Email", conn)
da.SelectCommand.Parameters.AddWithValue("@Email", Session("Email").ToString)
Label1.Text = Session("Email")
Dim obj As New DB_Member
Dim dt As DataTable = obj.FindMembPage()
GridView.DataSource = dt
GridView.DataBind()
End If
conn.Close()
End If
End Sub
Public Function FindMembPage() As DataTable
Getconnection()
Dim sql As String = "SELECT Member.MemberID,Member.EnglishName,Member.ArabicName,Member.MemberImage,Member.DateOfMembership,Member.Email,Member.Phone,Member.Password,Member.CityID ... ,(City.CityName +', ' +Country.CountryName) AS CityCountry FROM Member,City,Country,ALEVEL,BLEVEL,CLEVEL Where City.CityID=Member.CityID AND Member.CountryID = Country.CountryID AND .... AND Email=@Email "
Dim dt As New DataTable
Dim da As New SqlDataAdapter(sql, Me.conn)
If CountryID <> 0 Then
da.SelectCommand.CommandText &= "AND City.CountryID = @CountryID"
da.SelectCommand.Parameters.Add("@CountryID", SqlDbType.Int).Value = CountryID
End If
If CityID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.CityID =@CityID"
da.SelectCommand.Parameters.Add("@CityID", SqlDbType.Int).Value = CityID
End If
If MemberID <> "" Then
da.SelectCommand.CommandText &= "AND Member.MemberID Like @MemberID"
da.SelectCommand.Parameters.Add("@MemberID", SqlDbType.NVarChar).Value = "%" & MemberID & "%"
End If
If EnglishName <> "" Then
da.SelectCommand.CommandText &= " AND Member.EnglishName Like @EnglishName"
da.SelectCommand.Parameters.Add("@EnglishName", SqlDbType.NVarChar).Value = "%" & EnglishName & "%"
End If
If ArabicName <> "" Then
da.SelectCommand.CommandText &= " AND Member.ArabicName Like @ArabicName"
da.SelectCommand.Parameters.Add("@ArabicName", SqlDbType.NVarChar).Value = "%" & ArabicName & "%"
End If
If Email <> "" Then
da.SelectCommand.CommandText &= " AND Member.Email Like @Email"
da.SelectCommand.Parameters.Add("@Email", SqlDbType.NVarChar).Value = Email
End If
If AID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.AID = @AID"
da.SelectCommand.Parameters.Add("@AID", SqlDbType.Int).Value = AID
End If
If BID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.BID = @BID"
da.SelectCommand.Parameters.Add("@BID", SqlDbType.Int).Value = BID
End If
If CID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.CID = @CID"
da.SelectCommand.Parameters.Add("@CID", SqlDbType.Int).Value = CID
End If
Try
Getconnection()
da.Fill(dt)
Catch ex As SqlException
Me.Msg = "Error Message"
Finally
Try
Me.conn.Close()
Catch
End Try
End Try
Return dt
End Function
What I have tried:
<pre> If Not IsPostBack Then
If Session("Email") = "" Then
Response.Redirect("Login-Member.aspx")
Else
Dim conn As New SqlConnection("Data Source=...")
conn.Open()
Dim da As New SqlDataAdapter("SELECT Member.Email FROM Member Where Email=@Email", conn)
da.SelectCommand.Parameters.AddWithValue("@Email", Session("Email").ToString)
Label1.Text = Session("Email")
Dim obj As New DB_Member
Dim EnglishName As String = CType(GridView.SelectedValue.FindControl("lblEnglishName"), Label).Text
Dim MemberImage As String = CType(GridView.SelectedValue.FindControl("lblMemberImage"), Label).Text
Dim ArabicName As String = CType(GridView.SelectedValue.FindControl("lblArabicName"), Label).Text
Dim Email As String = CType(GridView.SelectedValue.FindControl("lblEmail"), Label).Text
Dim CityCountry As String = CType(GridView.SelectedValue.FindControl("lblCountry"), Label).Text
Dim Dateofmembership As String = CType(GridView.SelectedValue.FindControl("lblDateofmembership"), Label).Text
Dim Phone As String = CType(GridView.SelectedValue.FindControl("lblPhone"), Label).Text
Dim Password As String = CType(GridView.SelectedValue.FindControl("lblPassword"), Label).Text
Dim PCTName As String = CType(GridView.SelectedValue.FindControl("lblA"), Label).Text
Dim ISIDName As String = CType(GridView.SelectedValue.FindControl("lblB"), Label).Text
Dim SBName As String = CType(GridView.SelectedValue.FindControl("lblC"), Label).Text
Dim dt As DataTable = obj.FindMembPage()
GridView.DataSource = dt
GridView.DataBind()
End If
conn.Close()
End If