27-11-17, 04:11 PM
(آخر تعديل لهذه المشاركة : 27-11-17, 04:14 PM {2} بواسطة الراجية عفو ربها.)
السلام عليكم ورحمة الله
حياكم الله ويعطيكم العافية جميعا
لدي سؤال ضروري وأرجو منكم المساعدة الطيبة
سؤالي هو كيف أستطيع استدعاء مستخدم واحد من جدول المستخدمين Members
عن طريق تسجيل الدخول
بحيث لو قام المستخدم أو العضو بتسجيل دخوله وتطابق إيميله وكلمة المرور كما هو في الجدول يدخل لصفحته الخاصة به
ويعرض كافة بياناته من الجدول ؟
واستفساري الآخر حينما يقوم بتسجيل الخروج كيف نمنعه من العودة مرة أخرى لصفحته لأن هذه المشكلة لم تحل معي أيضاً ..
هذه هي الأكواد التي استخدمتها ولا أدري إن كان هناك خطأ معين في الكود ..
وجزاكم الله عني كل خير
كود :
صفحة MemberLogin.aspx
<%@ Control Language="VB" AutoEventWireup="false" CodeFile="MemberLogin.ascx.vb" Inherits="httpdocs_AdminCTRL_MemberLogin" %>
<meta http-equiv="Pragma" content="no-cache" />
<meta http-equiv="Expires" content="-1" />
<meta http-equiv="CACHE-CONTROL" content="NO-CACHE" />
<style type="text/css">
.style1
{
background-color: #666666;
}
</style>
<div style="height: 60px; width: auto; float: right; color: #800000; vertical-align: middle; padding-top: 10px;">
<asp:Label ID="LabelNameMember" runat="server" style="color: #FFFFFF"></asp:Label>
<asp:LinkButton ID="LinkButtonLogout" runat="server" Width="70px"
Visible="False" Font-Underline="False">Logout</asp:LinkButton>
<asp:TextBox ID="txtid" runat="server" CssClass="style1"
Height="19px" Visible="False" Width="91px"></asp:TextBox>
<asp:TextBox ID="txtpassword" runat="server" TextMode="Password"
CssClass="style1" height="19px" Visible="False" width="91px"></asp:TextBox>
<asp:LinkButton ID="LinkButtonLogin" runat="server" Width="70px"
Visible="False">Go</asp:LinkButton>
<asp:LinkButton ID="LoginShow" runat="server" Width="70px">Login</asp:LinkButton>
<asp:LinkButton ID="LinkButtonRegister" runat="server" Width="75px">Register</asp:LinkButton>
<br />
<asp:Label ID="lblMsg" runat="server" style="display:inline-block; height:47px; width:200px; padding:0px 30px 0px 105px; font-size : small; font-family: Tahoma; color: #800000;" ></asp:Label>
</div>
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always">
<ContentTemplate>
<asp:Repeater ID="RepeaterMember" runat="server">
<ItemTemplate>
<div id="visibrep" style="height: 290px;width: 205px;float: left;text-align: left;direction: ltr;margin: 2px 10px 20px 10px;border: solid 1px #D5CBCB;padding: 10px 0px 10px 15px;border-radius: 20px;">
<div style="Margin-right:10px;text-align: left; direction: ltr;color: #0C19FF;height :155px;padding-left: 20px;"><img src="../../Style/images/pct/<%# Eval("MemberImage")%>.png"/></div>
<div style=" text-align: left; direction: ltr;color: #000;font-size: 13px;font-family: tahoma;margin-top: 7px;"><%# Eval("EnglishName")%></div>
<div style=" text-align: left; direction: ltr;color: #0C19FF;font-size: 13px;font-family: tahoma;"><%# Eval("CityName")%>, <%# Eval("CountryName")%></div>
<asp:Label ID="lblPCTLEVEL" runat="server" style=" text-align: left; direction: ltr;color: black;font-size: 13px;font-family: tahoma;float:left ;display: -webkit-box;"><%# Eval("PCTNote")%><%# ProcessMyDataItem(Eval("PCTName"))%></asp:Label>
<asp:Label ID="lblISIDLEVEL" runat="server" style=" text-align: left; direction: ltr;color: black;font-size: 13px;font-family: tahoma;float:left ;display: -webkit-box;"><%# Eval("ISIDNote")%><%# ProcessMyDataItem2(Eval("ISIDName"))%></asp:Label>
<asp:Label ID="lblSBSLEVEL" runat="server" style=" text-align: left; direction: ltr;color: black;font-size: 13px;font-family: tahoma;float:left ;display: -webkit-box;"><%# Eval("SBSNote")%><%# ProcessMyDataItem3(Eval("SBName"))%></asp:Label>
</div>
</ItemTemplate>
</asp:Repeater>
</ContentTemplate>
<Triggers>
</Triggers>
</asp:UpdatePanel>
صفحة MemberLogin.vb
كود :
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.DataSet
Imports System
Imports System.Configuration
Imports System.Collections
Imports System.Web
Imports System.Web.Security
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.Web.UI.HtmlControls
Imports System.Data.OleDb
Partial Class httpdocs_AdminCTRL_MemberLogin
Inherits System.Web.UI.UserControl
Protected Sub LinkButtonLogin_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButtonLogin.Click
Dim objM As New DB_Member
objM.ProEmail = txtid.Text
objM.ProPassword = txtpassword.Text
Dim dt As DataTable = objM.FindPass()
If dt.Rows.Count <> 0 Then
LinkButtonLogin.Visible = False
LinkButtonLogout.Visible = True
LinkButtonRegister.Visible = False
Dim objM3 As New DB_Member
objM.ProEmail = txtid.Text
objM.ProPassword = txtpassword.Text
Dim reader As SqlDataReader = objM3.FindMember()
LabelNameMember.Visible = True
LabelNameMember.Text = "Welcome Mr/Ms." + objM.ProEnglishName
txtid.Visible = False
txtpassword.Visible = False
Else
lblMsg.Text = "Plz Check U Email and Password"
End If
End Sub
Protected Sub LinkButtonLogout_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LinkButtonLogout.Click
LinkButtonLogin.Visible = True
LinkButtonLogout.Visible = False
LabelNameMember.Visible = False
LinkButtonRegister.Visible = False
Session.Clear()
Session.RemoveAll()
Session.Abandon()
System.Web.Security.FormsAuthentication.SignOut()
Response.Redirect("Login-Member.aspx")
End Sub
Protected Sub LoginShow_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles LoginShow.Click
LinkButtonLogin.Visible = True
LoginShow.Visible = False
txtid.Visible = True
txtpassword.Visible = True
End Sub
Protected Sub Page_Load(sender As Object, e As EventArgs) Handles Me.Load
Session.Abandon()
FormsAuthentication.SignOut()
End Sub
Public Function ProcessMyDataItem(myValue As Object) As String
If myValue Is DBNull.Value Then
Return ""
End If
Return myValue.ToString()
End Function
Public Function ProcessMyDataItem2(myValue As Object) As String
If myValue Is DBNull.Value Then
Return ""
End If
Return myValue.ToString()
End Function
Public Function ProcessMyDataItem3(myValue As Object) As String
If myValue Is DBNull.Value Then
Return ""
End If
Return myValue.ToString()
End Function
End Class
صفحة App Code MemberLogin.vb
كود :
حيث تم التصريح عن كافة المتغيرات
Public Function FindPass() As DataTable
Getconnection()
Dim SQL As String = "SELECT * from Member where Email=@Email and Password=@Password "
Dim dt As New DataTable
Dim da As New SqlDataAdapter(SQL, conn)
da.SelectCommand.Parameters.Add("@Email", SqlDbType.NVarChar).Value = Email
da.SelectCommand.Parameters.Add("@Password", SqlDbType.NVarChar).Value = Password
Try
da.Fill(dt)
Catch ex As Exception
'Error
Finally
conn.Close()
End Try
Return dt
End Function
Public Function FindMember() As SqlDataReader
Getconnection()
Dim comm As SqlCommand
comm = New SqlCommand("select * from Member where Member.Email=@Email and Member.Password=@Password ", conn)
Dim reader As SqlDataReader
comm.Parameters.Add("@Email", SqlDbType.NVarChar).Value = Email
comm.Parameters.Add("@Password", SqlDbType.NVarChar).Value = Password
reader = comm.ExecuteReader()
'reader = comm.ExecuteReader(CommandBehavior.CloseConnection)
If reader.HasRows Then
reader.Read()
Email = reader.Item("Email").ToString()
Password = reader.Item("password").ToString() ArabicName = reader.Item("ArabicName").ToString()
End If
reader.Close()
conn.Close()
Return reader
End Function
Public Function FindMebPage() As DataTable
Getconnection()
Dim sql As String = "SELECT Member.MemberID,Member.EnglishName,Member.ArabicName,Member.MemberImage,Member.DateOfMembership,Member.Email,Member.Phone,Member.CityID,Member.PCTLEVELID,MEmber.ISIDLEVELID,Member.SBLEVELID,Member.CategoryID,Member.PCTID,Member.ISIDID,Member.SBSID,Member.CountryID,Country.CountryName,City.CityName,Category.CateName,PCTLEVEL.PCTName,PCTLEVEL.PCTNote,ISIDLEVEL.ISIDNote,SBLEVEL.SBSNote,ISIDLEVEL.ISIDName,SBLEVEL.SBName FROM Member,City,Category,Country,PCTLEVEL,ISIDLEVEL,SBLEVEL Where City.CityID=Member.CityID AND Member.CountryID = Country.CountryID AND Category.CategoryID = Member.CategoryID AND PCTLEVEL.PCTLEVELID =Member.PCTLEVELID AND ISIDLEVEL.ISIDLEVELID =Member.ISIDLEVELID AND SBLEVEL.SBLEVELID =Member.SBLEVELID AND Member.Email = Member.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 PCTID <> "" Then
da.SelectCommand.CommandText &= " AND Member.PCTID Like @PCTID"
da.SelectCommand.Parameters.Add("@PCTID", SqlDbType.NVarChar).Value = "%" & PCTID & "%"
End If
If ISIDID <> "" Then
da.SelectCommand.CommandText &= " AND Member.ISIDID Like @ISIDID"
da.SelectCommand.Parameters.Add("@ISIDID", SqlDbType.NVarChar).Value = "%" & ISIDID & "%"
End If
If SBSID <> "" Then
da.SelectCommand.CommandText &= " AND Member.SBSID Like @SBSID"
da.SelectCommand.Parameters.Add("@SBSID", SqlDbType.NVarChar).Value = "%" & SBSID & "%"
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 CategoryID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.CategoryID = @CategoryID"
da.SelectCommand.Parameters.Add("@CategoryID", SqlDbType.Int).Value = CategoryID
End If
If PCTLEVELID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.PCTLEVELID = @PCTLEVELID"
da.SelectCommand.Parameters.Add("@PCTLEVELID", SqlDbType.Int).Value = PCTLEVELID
End If
If ISIDLEVELID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.ISIDLEVELID = @ISIDLEVELID"
da.SelectCommand.Parameters.Add("@ISIDLEVELID", SqlDbType.Int).Value = ISIDLEVELID
End If
If SBLEVELID <> 0 Then
da.SelectCommand.CommandText &= " AND Member.SBLEVELID = @SBLEVELID"
da.SelectCommand.Parameters.Add("@SBLEVELID", SqlDbType.Int).Value = SBLEVELID
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
[b][size=large][font=Arial, tahoma] End Function
[/font][/size][/b]