Bảo vệ cookie

Thảo luận trong 'Lập trình Web' bắt đầu bởi dinoking, 31/7/05.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. dinoking
    Offline

    dinoking Technician Admin

    402
    0
    670
    Bước 1: Cookie (login)
    Chèn doạn code vào thẻ HEAD

    Mã:
    <HEAD>
    
    <SCRIPT LANGUAGE="JavaScript">
    <!-- Begin
    function getCookieVal (offset) {
    var endstr = document.cookie.indexOf (";", offset);
    if (endstr == -1)
    endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
    }
    function GetCookie (name)  {
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen)  {
    var j = i + alen;
    if (document.cookie.substring(i, j) == arg)
    return getCookieVal (j);i = document.cookie.indexOf(" ", i) + 1;
    if (i == 0) break; 
    }
    return null;
    }
    function SetCookie (name, value)  {
    var argv = SetCookie.arguments;
    var argc = SetCookie.arguments.length;
    var expires = (argc > 2) ? argv[2] : null;
    var path = (argc > 3) ? argv[3] : null;
    var domain = (argc > 4) ? argv[4] : null;
    var secure = (argc > 5) ? argv[5] : false;
    document.cookie = name + "=" + escape (value) +
    ((expires == null) ? "" : ("; expires=" + expires.toGMTString())) +
    ((path == null) ? "" : ("; path=" + path)) +
    ((domain == null) ? "" : ("; domain=" + domain)) +
    ((secure == true) ? "; secure" : "");
    }
    function DeleteCookie () { 
    var exp = new Date();
    exp.setTime (exp.getTime() - 1000000000);  // This cookie is history
    var cval = GetCookie ('FreeStuffL');
    document.cookie ='FreeStuffL' + "=" + cval + "; expires=" + exp.toGMTString();    
    }
    function cookieCreater () {
    if(GetCookie('FreeStuffL') == null) {
    var FreeStuffL_Name =  prompt ("What name do you want to go by?", "" );
    if (FreeStuffL_Name != null && FreeStuffL_Name != "") {
    var expdate = new Date (); 
    expdate.setTime(expdate.getTime() + (24 * 60 * 60 * 1000 * 365)); 
    SetCookie('FreeStuffL', FreeStuffL_Name, expdate);  
    alert ("You now are logged in!  From now on, when you come to this page, you will be forwarded to the Password Protected Members-Only Area.  Please do not tell anyone your entry code.  At this new page, you will be shown a list of functions.  Have fun!");
    location.href = "cookie-in.html"
       }
    }
    else {
    DeleteCookie ();
    cookieCreater ()
    }
    }
    if(GetCookie('FreeStuffL') != null) {
    location.href="cookie-in.html"
    }
    function check() {
    var tester = document.login.numOne.value + document.login.numTwo.value;
    if (tester == "") {
    alert ("I'm sorry, that code is not correct.");
    }
    else
    {
    if (tester == document.login.numThree.value) {
    alert ("That is correct!");
    cookieCreater ();
    }
    else {
    alert ("Nope!");
          }
       }
    }
    // End -->
    </SCRIPT>
    
    Chèn code sau vào thẻ BODY
    
    <BODY>
    
    <center>
    <form name='login'>
    Enter your login code (FORMAT: login # one, login # two, login # three):
    <p><input TYPE='text' NAME='numOne' SIZE=15><br>
    <input TYPE='text' NAME='numTwo' SIZE=15 ><br>
    <input TYPE='text' NAME='numThree' SIZE=15 ><br>
    <input TYPE='button' VALUE='Login' ONCLICK='check()'>
    </form>
    </center>
    <font size=1 color=white>
    This page requires Javascript to run!  Please get Netscape 2.0 or greater!
    </font>
    <form name="login2">
    <input type=hidden name="go" value="cookie-in.html">
    </form>  
    Bước 2: Cookie (protected)
    Chèn code au day vô thẻ BODY

    Mã:
    <BODY>
    
    <SCRIPT>
    <!-- Begin
    if(GetCookie('FreeStuffL') == null) {
    alert ("I'm sorry.  You can not view this area!  You will be bounced to the login page...")
    location.href="pass.html"
    }
    else
    {
    document.write("<center><font size=5 color=red>Welcome "+GetCookie('FreeStuffL')+"!  </font><font size=4 color=red>Thank you for entering the Javascript Source Password Protected Area.  You have access to all files and scripts in this area.</font>");
    document.write("<hr><br>The following options will help you keep track of the Members-Only Section..<br>");
    document.write("<p><a href=index.html>Go back to The Javascript Source Home Page</a>");
    document.write("<form><input type=button onClick='nameWhat()' value='What is my login name?'></form>");
    document.write("<form><input type=button value='Erase your account or change your login name!'  onClick='DeleteCookie ()'></form>");
    document.write("<a href=mailto:antispammer@earthling.net>Mail [email]antispammer@earthling.net[/email]</a>");
    document.write("<hr><font size=5>T</font>he following items can not be accessed by users that do not have security clearence.<br>");
    document.write("<form><input type=button value='Info about how this login page works.' onClick='pageInfo ()'></form><br>");
    document.write("<p><font size=5 color=green>This page will, of course, be updated very often!  And once again, thanks for registering!</center>");
    }
    document.write ("<font size=1 color=white>");
    // End -->
    </SCRIPT>
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này