Page 157 - CITS - Computer Software Application -TT
P. 157

COMPUTER SOFTWARE APPLICATION - CITS




           A Function to Set a Cookie
           First, we create a function that stores the name of the visitor in a cookie variable:
           Example
           function setCookie(cname, cvalue, exdays) {
             const d = new Date();
             d.setTime(d.getTime() + (exdays*24*60*60*1000));

             let expires = “expires=”+ d.toUTCString();
             document.cookie = cname + “=” + cvalue + “;” + expires + “;path=/”;
           }
           Example explained:

           The parameters of the function above are the name of the cookie (cname), the value of the cookie (cvalue), and
           the number of days until the cookie should expire (exdays).
           The function sets a cookie by adding together the cookiename, the cookie value, and the expires string.

           A Function to Get a Cookie
           Then, we create a function that returns the value of a specified cookie:
           Example
           function getCookie(cname) {
             let name = cname + “=”;
             let decodedCookie = decodeURIComponent(document.cookie);

             let ca = decodedCookie.split(‘;’);
             for(let i = 0; i <ca.length; i++) {
               let c = ca[i];
               while (c.charAt(0) == ‘ ‘) {

                 c = c.substring(1);
               }
               if (c.indexOf(name) == 0) {
                 return c.substring(name.length, c.length);
               }

             }
             return “”;
           }
           Function explained:

           Take the cookiename as parameter (cname).
           Create a variable (name) with the text to search for (cname + “=”).
           Decode the cookie string, to handle cookies with special characters, e.g. ‘$’
           Split document.cookie on semicolons into an array called ca (ca = decodedCookie.split(‘;’)).
           Loop through the ca array (i = 0; i < ca.length; i++), and read out each value c = ca[i]).
           If the cookie is found (c.indexOf(name) == 0), return the value of the cookie (c.substring(name.length, c.length).

           If the cookie is not found, return “”.




                                                           144

                             CITS : IT&ITES - Computer  Software Application - Lesson 37 - 46
   152   153   154   155   156   157   158   159   160   161   162