kada nesto pravite obicno zelite da odredjeni korisnici pristupaju odredjenim delovima vaseg sajta, aplikacije ili cega vec.
u tu svrhu mozete da napravite log in kako bi ih prepoznali i dozvolili pristup ili ne.
ono sto morate da imate to je ispravna konekcija prema bazi (u ovom slucaju Access, mada je ne bitno koja je baza)
Dim conn '// objekat koji ce da sluzi za konekciju prema bazi
Set conn = Server.CreateObject("ADODB.Connection")
conn.ConnectionString = "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("moja_baza.mdb") & ";"
conn.Open
ovo mozete da stavite u poseban fajl npr. conn.asp i da ga uvezete u svaku stranicu (u login.asp u nasem slucaju) koja treba da kontaktira sa bazom pomocu <!-- #include file = "conn.asp" --> npr. na pocetku stranice pre <html> taga
zamislimo da u toj nasoj bazi imamo tabelu tblUsers sa sledecim atributima (poljima)
uid - User ID, tip Number i PrimaryKey
username - tip Text
password - tip Text
level - koji nivo ima, da li je admin ili sta vec, tip Text
mozete dodati i vise informacija, ali za ovo je dovoljno i ovoliko...
sada morate napraviti formu u kojoj ce se nalaziti dva text polja i jedno dugme tipa submit...
<form name="frmLogin" action="login.asp">
Korisnicko ime: <input type="text" name="username"><br>
Sifra: <input type="text" name="password"><br>
<input type="submit" name="submit" value="log in">
</form>
kada ste ovo dodali, mozete da krenete da pisete kod za log in.
pre nego sto ista uradimo, da napomenem da se ovaj kod nalazi u login.asp stranici dok ova forma u bilo kojoj drugoj...
posle taga </form> mozemo da krenemo da pisemo kod izmedju <%%>
<%
Dim rs, strSQL
strSQL = "SELECT * FROM tblUsers WHERE username='" & Request.Form("username") & "' AND password='" & Request.Form("password") & "';"
Set rs = Server.CreateObject("ADODB.Recorset")
Set rs = conn.Execute(strSQL)
If rs.EOF then
'// korisnik ne postoji u bazi
Response.Redirect("error.asp")
Else
'// korisnik postoji u bazi i postavljamo Session objekat
Session("UName") = rs("username") '// korisnicko ime koje cemo nekada negde ispisati
Session("Level") = rs("level") '// sluzi za proveru pri ulasku na neke zasticene stranice
Response.Redirect("main.asp")
End If
%>
na svaku stranicu koju zelite da zastitite od ne registrovanih korisnika treba skroooooz gore da postavite sledeci kod
<%
If IsEmpty(Session("UName")) Then
Response.Redirect("registration.asp")
End If
%>
ako zelite da stranicu zastitite od registrovanih korisnika, ali koji imaju manje prava onda trebate da ubacite sledeci kod
<%
If Session("Level") <> "Admin" Then
Response.Redirect("AuthorisationRequired.asp")
End If
%>
i na kraju logout...
napravite novi fajl koji ce se zvati npr. logout.asp i u njega upisite sledece
<%
Session.Abandon()
Response.Redirect("default.asp")
%>
nadam se da ce vam koristiti...
|