Visualizzazione risultati 1 fino 8 di 8

Discussione: problema salvataggio cookie

  1. #1
    Guest

    Predefinito problema salvataggio cookie

    Salve! nel mio sito sto cercando di fare un sistema di login/register in modo che chiunque uploada qualcosa può successivamente eliminarla.

    tramite la funzione
    Codice PHP:
    setcookie("login", "OK", time() + 999999999999999999999);
    ho settato login a "ok", ma se ad esempio vado a verificare nella pagina di upload del sito se l'utente è loggato e quindi procedere con il registro dei file salvati, la cookie login risulta nulla.

    Codice PHP:
    //********SALVATAGGIO DATI CARICATI
    echo "<iframe src=\"_altervista_ht/download/user/privata.php\" width=0 height=0 border=0 width=0 height=0 frameborder=0 scrolling=\"no\" marginwidth=0 marginheight=0></iframe>";
    if (
    $_COOKIE["login"] == "OK")
    {

    // Stringa da scrivere su file
    $stringa=$nomedue. $_FILES['image']['name'];

    // Scrittura del file
    $scrivi_file=fopen($_COOKIE["user"]."upload.ini","a");
    fwrite($scrivi_file,$stringa);
    fclose($scrivi_file);
    }else{
    echo
    "Effettua il login";
    }

    //********SALVATAGGIO DATI CARICATI
    infatti mi stampa sempre effettua il login

    potete provare a registrarvi qui: http://megahost.altervista.org/_alte...istrazione.htm
    e uploadare qualcosa qua http://megahost.altervista.org e in basso apparirà effettua il login .-.
    Ultima modifica di megahost : 13-05-2010 alle ore 15.25.28

  2. #2
    Guest

    Predefinito

    Non sono sicuro, ma potrebbe essere che il periodo di validità del cookie abbia un valore troppo alto. Proverei ad impostarlo ad un anno (a me funziona benissimo così):
    Codice PHP:
    setcookie("login", "OK", time() + 31536000);
    Ciao!

  3. #3
    Guest

    Predefinito

    Citazione Originalmente inviato da RigheDiCodice Visualizza messaggio
    Non sono sicuro, ma potrebbe essere che il periodo di validità del cookie abbia un valore troppo alto. Proverei ad impostarlo ad un anno (a me funziona benissimo così):
    Codice PHP:
    setcookie("login", "OK", time() + 31536000);
    Ciao!
    non va, anche perchè su privata.php funziona, mi riconosce che login è "OK", mentre sul resto del sito no

  4. #4
    Guest

    Predefinito

    E allora mi sa che è un problema riguardante la path di validità del cookie. Devi impostare esplicitamente la directory in cui vuoi sia valido il cookie, quindi se è tutto la root (tutto il sito):
    Codice PHP:
    setcookie("login", "OK", time() + 31536000, "/");
    La documentazione di setcookie(), alla spiegazione del parametro $path, dice infatti:
    The default value is the current directory that the cookie is being set in.
    Ultima modifica di RigheDiCodice : 13-05-2010 alle ore 17.10.16

  5. #5
    Guest

    Predefinito

    grazie mille ora funziona :)

    EDIT
    adesso ho un altro problema non riesco a salvare più di 2 cookie, controllando anche da firefox mi fa vedere solo user e pass ma se ne voglio salvare una terza non va
    Ultima modifica di musicanapoli : 13-05-2010 alle ore 21.02.35

  6. #6
    L'avatar di skydrake
    skydrake non è connesso Utente
    Data registrazione
    22-04-2006
    Residenza
    Verona
    Messaggi
    218

    Predefinito

    ricorda che i cookie vengono "salvati" tramite un header, quindi devi mandarli PRIMA di ogni altra cosa. anche uno spazio mandato prima della funzione setcookie e tutto si impalla. (capita a volte di scrivere piu spezzoni di php iniziali... anche eventuali righe vuote sono righe di html che vengono inviate alla pagina...e quindi hai gia superato la fase degli header in cui puoi salvare cookies.)

    provo a spiegarmi meglio...

    Codice PHP:
    <?
    //primo codices
    setcookie(...);
    ?>
    <---- questo è lo spazio che fa terminare gli headers e porta al corpo del documento
    <?
    //altro codice
    setcookie(...);
    //e questo setcookie non funge
    ?>
    prova a darci un'occhiata.
    Ultima modifica di skydrake : 13-05-2010 alle ore 23.42.42


    Si, la mia firma cambia immagine continuamente! :)

  7. #7
    Guest

    Predefinito

    guarda la pagina che non mi fa salvare il cookie è composta sia di html che php

    http://pastebin.com/qegHa1Pm

    se nella riga 175 metto il setcookie non funge...

    e comunque avvolte capita che non mi riconosce più che sono loggato e se mi riloggo mi dice sepre che non sono loggato e devo perforza eliminare i cookie e riloggarmi o.o

    e ad esempio posso lasciare spazi qui?:


    <?php

    //spazzi




    ?>
    Ultima modifica di megahost : 14-05-2010 alle ore 17.34.43

  8. #8
    L'avatar di skydrake
    skydrake non è connesso Utente
    Data registrazione
    22-04-2006
    Residenza
    Verona
    Messaggi
    218

    Predefinito

    si. (a quanto pare "si." è troppo corta come risposta, quindi aggiungo questo SPAM per renderla accettabile dal sistema, non volermene a male!)


    Si, la mia firma cambia immagine continuamente! :)

Regole di scrittura

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