Visualizzazione dei risultati da 1 a 3 su 3

Discussione: Cookie e Form

  1. #1

    Cookie e Form

    Ciao!
    Devo fare un progetto per l'università, creare u nsito Html con javascript che mi permetta di gestire i login con i cookie.
    Se un utente è già registrato e quindi il suo cookie è già presente, gli basta accedere. Se è nuovo deve compilare un modulo!
    Ora...Ho letto qui sul forum e ho fatto ricerche su internet, premetto che è il primo corso che faccio su html e pagine web quindi non sono molto pratica!
    non riesco proprio a capire come usando le funzioni in javascript sui cookie si possano salvare i campi dei form una volta che premo il tasto invio.
    Soprattutto perchè non riesco a comprendere appieno tutto il significato delle righe di codice in javascript per la gestione dei cookie!
    Mi date una mano?
    Questo è il modulo che ho creato:



    <form method="post" name="modulo">

    Registrazione al servizio
    Tutti i campi sono obbligatori
    </td>



    Nome</br>
    <input type="text" name="nome">


    Cognome</br>
    <input type="text" name="cognome">


    Nickname</br>
    <input type="text" name="nickname">


    Password</br>
    <input type="password" name="password">


    Conferma password</br>
    <input type="password" name="conferma">


    Sesso</br>

    <input type="radio" name="sesso" value="M" checked>M
    <input type="radio" name="sesso" value="F">F




    Città</br>

    <select name="citta">
    <option value="">-Scegli la tua Provincia-</option>
    <option value="AG">AGRIGENTO</option>
    <option value="AL">ALESSANDRIA</option>
    <option value="AN">ANCONA</option>
    <option value="AO">AOSTA</option>
    <option value="AR">AREZZO</option>
    <option value="AP">ASCOLI PICENO</option>
    <option value="AT">ASTI</option>
    <option value="AV">AVELLINO</option>
    <option value="BA">BARI</option>
    <option value="BL">BELLUNO</option>
    <option value="BN">BENEVENTO</option>
    <option value="BG">BERGAMO</option>
    <option value="BI">BIELLA</option>
    <option value="BO">BOLOGNA</option>
    <option value="BZ">BOLZANO</option>
    <option value="BS">BRESCIA</option>
    <option value="BR">BRINDISI</option>
    <option value="CA">CAGLIARI</option>
    <option value="CL">CALTANISSETTA</option>
    <option value="CB">CAMPOBASSO</option>
    <option value="CE">CASERTA</option>
    <option value="CT">CATANIA</option>
    <option value="CZ">CATANZARO</option>
    <option value="CH">CHIETI</option>
    <option value="CP">CIPRO</option>
    <option value="CV">CITTA DEL VATICANO</option>
    <option value="CO">COMO</option>
    <option value="CS">COSENZA</option>
    <option value="CR">CREMONA</option>
    <option value="KR">CROTONE</option>
    <option value="CN">CUNEO</option>
    <option value="EN">ENNA</option>
    <option value="FE">FERRARA</option>
    <option value="FI">FIRENZE</option>
    <option value="FG">FOGGIA</option>
    <option value="FO">FORLI'</option>
    <option value="FR">FROSINONE</option>
    <option value="GE">GENOVA</option>
    <option value="GO">GORIZIA</option>
    <option value="GR">GROSSETO</option>
    <option value="IM">IMPERIA</option>
    <option value="IS">ISERNIA</option>
    <option value="SP">LA SPEZIA</option>
    <option value="AQ">L'AQUILA</option>
    <option value="LT">LATINA</option>
    <option value="LE">LECCE</option>
    <option value="LC">LECCO</option>
    <option value="LI">LIVORNO</option>
    <option value="LO">LODI</option>
    <option value="LU">LUCCA</option>
    <option value="MC">MACERATA</option>
    <option value="MN">MANTOVA</option>
    <option value="MS">MASSA-CARRARA</option>
    <option value="MT">MATERA</option>
    <option value="ME">MESSINA</option>
    <option value="MI">MILANO</option>
    <option value="MO">MODENA</option>
    <option value="NA">NAPOLI</option>
    <option value="ND">NON DEFINITA</option>
    <option value="NO">NOVARA</option>
    <option value="NU">NUORO</option>
    <option value="OR">ORISTANO</option>
    <option value="PD">PADOVA</option>
    <option value="PA">PALERMO</option>
    <option value="PR">PARMA</option>
    <option value="PV">PAVIA</option>
    <option value="PG">PERUGIA</option>
    <option value="PS">PESARO E URBINO</option>
    <option value="PE">PESCARA</option>
    <option value="PC">PIACENZA</option>
    <option value="PI">PISA</option>
    <option value="PT">PISTOIA</option>
    <option value="PN">PORDENONE</option>
    <option value="PZ">POTENZA</option>
    <option value="PO">PRATO</option>
    <option value="RG">RAGUSA</option>
    <option value="RA">RAVENNA</option>
    <option value="RC">REGGIO DI CALABRIA</option>
    <option value="RE">REGGIO NELL'EMILIA</option>
    <option value="RS">REP. DI SAN MARINO</option>
    <option value="RI">RIETI</option>
    <option value="RN">RIMINI</option>
    <option value="RM">ROMA</option>
    <option value="RO">ROVIGO</option>
    <option value="SA">SALERNO</option>
    <option value="SS">SASSARI</option>
    <option value="SV">SAVONA</option>
    <option value="SI">SIENA</option>
    <option value="SR">SIRACUSA</option>
    <option value="SO">SONDRIO</option>
    <option value="TA">TARANTO</option>
    <option value="TE">TERAMO</option>
    <option value="TR">TERNI</option>
    <option value="TO">TORINO</option>
    <option value="TP">TRAPANI</option>
    <option value="TN">TRENTO</option>
    <option value="TV">TREVISO</option>
    <option value="TS">TRIESTE</option>
    <option value="TL">TRIPOLI</option>
    <option value="UD">UDINE</option>
    <option value="VA">VARESE</option>
    <option value="VE">VENEZIA</option>
    <option value="VB">VERBANIA-CUSIO-OSSOLA</option>
    <option value="VC">VERCELLI</option>
    <option value="VR">VERONA</option>
    <option value="VV">VIBO VALENTIA</option>
    <option value="VI">VICENZA</option>
    <option value="VT">VITERBO</option>

    </select>



    Email</br>
    <input type="text" name="email"></td>



    <input type="button" value="Invia" onclick="cookieForms('save', 'Nome', 'Cognome', 'Nickname', 'Password', 'Sesso', 'Città', 'Email')">


    </form>



    Grazie!

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    se non posti il codice js della funzione cookieForms non vedo come possiamo darti una mano...

  3. #3
    Scusa hai ragione, io posto però quello che ho trovato sul web...
    purtroppo non so modificarlo per il mio scopo!


    <SCRIPT LANGUAGE="JavaScript">


    // Cookie Functions //////////////////// (



    // Set the cookie.

    // SetCookie('your_cookie_name', 'your_cookie_value', exp);



    // Get the cookie.

    // var someVariable = GetCookie('your_cookie_name');



    var expDays = 100;

    var exp = new Date();

    exp.setTime(exp.getTime() + (expDays*24*60*60*1000));



    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" : "");

    }



    // cookieForms saves form content of a page.



    // use the following code to call it:

    // <body onLoad="cookieForms('open', 'form_1', 'form_2', 'form_n')" onUnLoad="cookieForms('save', 'form_1', 'form_2', 'form_n')">



    // It works on text fields and dropdowns in IE 5+

    // It only works on text fields in Netscape 4.5





    function cookieForms() {

    var mode = cookieForms.arguments[0];



    for(f=1; f<cookieForms.arguments.length; f++) {

    formName = cookieForms.arguments[f];



    if(mode == 'open') {

    cookieValue = GetCookie('saved_'+formName);

    if(cookieValue != null) {

    var cookieArray = cookieValue.split('#cf#');



    if(cookieArray.length == document[formName].elements.length) {

    for(i=0; i<document[formName].elements.length; i++) {



    if(cookieArray[i].substring(0,6) == 'select') { document[formName].elements[i].options.selectedIndex = cookieArray[i].substring(7, cookieArray[i].length-1); }

    else if((cookieArray[i] == 'cbtrue') || (cookieArray[i] == 'rbtrue')) { document[formName].elements[i].checked = true; }

    else if((cookieArray[i] == 'cbfalse') || (cookieArray[i] == 'rbfalse')) { document[formName].elements[i].checked = false; }

    else { document[formName].elements[i].value = (cookieArray[i]) ? cookieArray[i] : ''; }

    }

    }

    }

    }



    if(mode == 'save') {

    cookieValue = '';

    for(i=0; i<document[formName].elements.length; i++) {

    fieldType = document[formName].elements[i].type;



    if(fieldType == 'password') { passValue = ''; }

    else if(fieldType == 'checkbox') { passValue = 'cb'+document[formName].elements[i].checked; }

    else if(fieldType == 'radio') { passValue = 'rb'+document[formName].elements[i].checked; }

    else if(fieldType == 'select-one') { passValue = 'select'+document[formName].elements[i].options.selectedIndex; }

    else { passValue = document[formName].elements[i].value; }



    cookieValue = cookieValue + passValue + '#cf#';

    }

    cookieValue = cookieValue.substring(0, cookieValue.length-4); // Remove last delimiter



    SetCookie('saved_'+formName, cookieValue, exp);

    }

    }

    }

    // End -->

    </script>

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.