Παραδείγματα κώδικα:: Login
Η χρησιμότητα του security system είναι προφανή αν στις σελίδες σου συμπεριλαμβάνονται προσωπικές πληροφορίες.
Το παράδειγμα θα σας εξηγήσει πως θα ζητήσουμε Login σε χρήστη σε περίπτωση που ο χρήστης δεν έχει κάνει login ακόμη.
Το tip.gr χρησιμοποιεί αυτού του είδους προστασία για interactive σελίδες.
Ας πούμε πως έχεις ένα site όπου οι χρήστες μπορούν να κάνουν ερωτήσεις. Θέλουμε να σιγουρευτούμε πως ο χρήστης έχει εγγραφή πριν τοποθετήσει ερώτηση..
Αν ο χρήστης δεν έχει εγγραφή ακόμη, θα τον ρωτήσουμε για εγγραφή. Μετά την επιτυχή εγγραφή, θα μεταφέρουμε το χρήστη στη σελίδα που επιθυμεί.
Πρώτα, θα χρειαστούμε ένα αρχείο που θα ελέγχει το login. Θα χρειαστεί να ζητάς αυτό το αρχείο από όλες τις σελίδες που χρειάζεται εγγραφή πρώτα.
security.asp
<%
bLoggedIn = (len(session("UserName")) > 0)
if bRequireLogin then
'Υποχρεωτική εγγραφή
if Not bLoggedIn then
'Δεν έχει γίνει εγγραφή, ρωτάμε για login
response.redirect "login.asp?comebackto=" & _
request.servervariables("script_name") & "?" & _
server.urlencode(request.querystring)
'Προσέξατε πως καλούμε την σελίδα που θα επιστρέψει ο επισκέπτης
end if
end if
%>
login.asp
Πρώτα από όλα στο login.asp αρχείο πρέπει να ενημερωθούμε από πού έρχεται ο επισκέπτης. Το variable sReferer χρησιμοποιείται για να στείλει τον επισκέπτη πίσω από όπου ήρθε.
sGoBackTo variable χρησιμοποιείται στο <form> tag tag για την παραμονή σε αυτή την τοποθεσία μετά το submit στο login form.
<%
if request("comebackto") <> "" then
sReferer = request("comebackto")
sGoBackTo = "?" & request.querystring
end if
if request("cmdLogin") <> "" then
'Έγινε το submit
sUserName = request("txtUserName")
sPassword = request("txtPassword")
'Έλεγχος για username και password
if sUserName = "bill" And sPassword = "gates" then
bLoginSuccessful = True
end if
session("UserName") = sUserName
'Μετά την επιτυχή εγγραφή θα στείλουμε τον επισκέπτη
'πίσω στην σελίδα που ήρθε. Το variable sReferer
'κρατάει την σελίδα επιστροφής, αν είναι άδειο, θα πρέπει
'να μεταφέρουμε τον επισκέπτη στην πρώτη σελίδ
if sReferer = "" then
response.redirect "index.asp"
else
response.redirect sReferer
end if
else
'Παρουσιάζουμε την φόρμα
%>
<form action="login.asp<%=sGoBackTo%>" method="post">
<input type="text" name="txtUserName"><br>
<input type="password" name="txtPassword"><br>
<input type="submit" name="cmdLogin"><br>
</form>
<%
end if
%>
testpage.asp
Τώρα, θα χρειαστεί να καθορίσουμε το bRequireLogin σε True και να συμπεριλάβουμε το security.asp αρχείο.
<%
bRequireLogin = True
%>
<!--#include file="security.asp"-->
Οι επισκέπτες θα πρέπει να εγγραφούν για να δουν αυτό το παράδειγμα.
Πιστεύω πως αυτό το παράδειγμα σας έδωσε μια πρώτη γρήγορη ματιά σε απλη υλοποίηση security system με ASP.