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 1082 korisnika na forumu :: 30 registrovanih, 8 sakrivenih i 1044 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: 357magnum, A.R.Chafee.Jr., babaroga, Battlehammer, bigfoot, comi_pfc, dane007, dankisha, Denaya, djuradj, DPera, draganl, dzoni19, FileFinder, Galcom, HrcAk47, ikan, krkalon, Metanoja, milenko crazy north, milutin134, misa1xx, Nemanja.M, Nikolaa11, pavlo, pein, procesor, theNedjeljko, vathra, VJ