Kako napraviti log in?

Kako napraviti log in?

offline
  • Pridružio: 18 Apr 2003
  • Poruke: 8134
  • Gde živiš: U kesici gumenih bombona...

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...



Registruj se da bi učestvovao u diskusiji. Registrovanim korisnicima se NE prikazuju reklame unutar poruka.
Ko je trenutno na forumu
 

Ukupno su 905 korisnika na forumu :: 59 registrovanih, 8 sakrivenih i 838 gosta   ::   [ Administrator ] [ Supermoderator ] [ Moderator ] :: Detaljnije

Najviše korisnika na forumu ikad bilo je 3466 - dana 01 Jun 2021 17:07

Korisnici koji su trenutno na forumu:
Korisnici trenutno na forumu: _Rade, ajo baba, Apok, aramis s, Atomski čoban, babaroga, bokisha253, Brana01, brundo65, Bubimir, cikadeda, crnitrn, darionis, Darko8, dekan.m, Denaya, djordje92sm, dragoljub11987, dule10savic, HrcAk47, ILGromovnik, Insan, ivan1973, JOntra, kunktator, kybonacci, ljuba, ljubacv, macak44, mercedesamg, Mi lao shu, milenko crazy north, MiroslavD, MrNo, mushroom, nebidrag, Nemanja.M, nenad81, NoOneEver Dreams, novator, nuke92, oldtimer, opt1, Panter, Pohovani_00, proka89, rasok, savaskytec, Srle993, stegonosa, Stoilkovic, theNedjeljko, UAV operator, vobo, wolf431, ZetaMan, Žrnov, 1107, 79693