Visualizzazione risultati 1 fino 10 di 10

Discussione: cookie e date

  1. #1
    Guest

    Predefinito

    ragazzi ho un problema

    io prendo la data e l'ora corrente in questo modo:

    $data = "date()";

    poi setto un cookie

    setcookie("data", "$data", (time()+86400));

    c'è un modo per controllare che la data e l'ora che ho scritto in precedenza nel cookie, + 24 ore siano maggiori o uguali alla data corrente.

    ad esempio così
    [code:1:0d34a3b351]
    $data = "date()";

    if(!$_COOKIE[data]) {

    setcookie("data", "$data", (time()+86400));
    } elseif($_COOKIE[data]) {

    if(($_COOKIE[data]+86400) >= $data) {
    fai qualcosa
    } else {
    fanne un'altra
    }
    }
    [/code:1:0d34a3b351]

    capito cosa intendo? credo che non funzioni il codice che ho postato, si può fare in altri modi?

  2. #2
    L'avatar di makpaolo
    makpaolo non è connesso Utente storico
    Data registrazione
    08-05-2003
    Residenza
    Brescia ( prov.)
    Messaggi
    9,399

    Predefinito

    prova a fare semplicemente


    $data = "date()";

    if(!$_COOKIE[data]) {

    setcookie("cookie_data", $data , time()+86400);
    } elseif($_COOKIE[data]) {

    if('$cookie_data'== $data) {
    fai qualcosa
    } else {
    fanne un'altra
    }
    }
    Se smetti di imparare e evolverti sei morto dentro

  3. #3
    Guest

    Predefinito

    ma il problema è che io devo sapere se sono trascorse 24 ore da quando ho impostato il cookie

  4. #4
    L'avatar di makpaolo
    makpaolo non è connesso Utente storico
    Data registrazione
    08-05-2003
    Residenza
    Brescia ( prov.)
    Messaggi
    9,399

    Predefinito

    Citazione Originalmente inviato da abbagliami
    ma il problema è che io devo sapere se sono trascorse 24 ore da quando ho impostato il cookie
    time()+86400 -->tempo di validità del cookie

    il tempo è espresso in secondi:
    1 minuti = valore 60
    1 ora =valore 360
    24 ore= valore 8640

    se sono trascorse le 24ore dalla creazione del cookie di sicuro non è più valido.
    Se smetti di imparare e evolverti sei morto dentro

  5. #5
    Guest

    Predefinito

    Citazione Originalmente inviato da makpaolo
    Citazione Originalmente inviato da abbagliami
    ma il problema è che io devo sapere se sono trascorse 24 ore da quando ho impostato il cookie
    time()+86400 -->tempo di validità del cookie

    il tempo è espresso in secondi:
    1 minuti = valore 60
    1 ora =valore 360
    24 ore= valore 8640

    se sono trascorse le 24ore dalla creazione del cookie di sicuro non è più valido.
    questo lo so ^_^

    ma io il controllo lo devo fare quando l'utente clicca su un bottone.

    più di una volta ogni 24 ore però non ci si può cliccare su questo bottone, ma su altri bottoni si.
    se io imposto il cookie ogni volta che clikko su un bottone con scadenza dopo 24 ore il cookie in un certo senso non scadrà mai e quando io andrò a clikkare sul bottone in cui avevo clikkato 24 ore prima il click non sarà valido.

    capisci quello che intendo?

    prendi ad esempio la classifica di AV. secondo quello che dici tu:

    tu vai nel sito A e lo voti. a questo punto ti viene impostato un cookie con scadenza dopo 24 ore

    tu dopo qualche ora vai nel sito B e lo voti...ti viene reimpostato il cookie con scadenza dopo 24 ore

    il giorno dopo se vuoi cliccare sul sito A di nuovo devono essere trascorse le 24 ore del cookie più "qualche ora" che sarebbe il tempo che hai aspettato prima di cliccare sul sito B perchè le 24 ore vengono reimpostate dopo che hai cliccato su B

    quindi io devo fare in un altro modo..clikko sul sito A

    se non c'è il cookie lo imposto con la data corrente e faccio una query inserendo il sito che ho votato più la data corrente.

    se c'è il cookie (e quindi avevo già votato il sito)devo controllare la data nel database corrispondente con il sito votato, confrontandola con quella del cookie...se quella del cookie risulta 24 ore più vecchia della data del database allora io posso registrare il voto, altrimenti no

    capito come?

  6. #6
    Guest

    Predefinito

    ed è quello ke makpaolo ha postato prima!
    if(!$_COOKIE...).....
    è il controllo ke verifica se il cookie c'è oppure no.

    Se non ho capito male. Potresti anche usare isset($_COOKIE[data])

  7. #7
    L'avatar di makpaolo
    makpaolo non è connesso Utente storico
    Data registrazione
    08-05-2003
    Residenza
    Brescia ( prov.)
    Messaggi
    9,399

    Predefinito

    Av fà il controllo con uno script sugli indirizzi IP, praticamente prende l'IP dell'utente, lo confronta con una tabella e se le ore sono meno di 24 non convalida il click.
    Più macchinoso ma più sicuro. ( sempre che non si cambi IP :? )
    Se smetti di imparare e evolverti sei morto dentro

  8. #8
    Guest

    Predefinito

    dici che è meglio se lo faccio con l'IP?

    però se uno ha l'IP fisso? una volta che ha votato non vota più?

    ma cmq come fa a controllare che siano passate proprio 24 ore e non 5 10 30 ecc minuti?

  9. #9
    L'avatar di gve
    gve
    gve non è connesso Utente storico
    Data registrazione
    26-01-2003
    Residenza
    Brescia
    Messaggi
    2,964

    Predefinito

    Reimpostare il cookie assegnadogli valore tipo $data."clicked" e quindi controllare la presenza o meno di clicked nella stringa?

    Non so se il suggerimento fa al caso tuo, comunque se non ho capito male potrebbe andare.
    | Regolamento del Forum | Regolamento di AlterVista | FAQ di AlterVista | Netiquette |

    GVE = GVE Virtual Extension
    AVCM #: 6637

  10. #10
    Guest

    Predefinito

    raga ho trovato la soluzione e l'ho postata sul forum di html.it

    http://forum.html.it/forum/showthrea...hreadid=520738

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •