Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Problema nel contenuto dei cookie

    Ciao a tutti,
    Vado subito ad esporre il mio problema...

    Utilizzo come hosting, netsons.com e per ovviare a problemi di sicurezza e di riempimento server con file tipo cookie o file temp eliminano quest'ultimi ogni tot di ore, in questo modo non posso gestire le sessioni o l'invio di cookie sul server ma devo salvare le variabili di sessioni dentro una cartella del mio sito utilizzando la seguente funzione:

    Codice PHP:
    session_save_path("/home/xxx/public_html/xxxx/session");
    session_start(); 
    Il mio problema stà nell'inviare il cookie, in quanto non vengono presi i valori passati ma vengono inviati i seguenti dati:

    Nome: PHPSESSID
    Contenuto: 7ea5fe0519eb2ef9224910402db1f119

    Codice PHP:
    $contenuto$_POST['user'];// username inserita dal cliente
    setcookie("xxx"$contenuto ,time()+604800); 
    Secondo me il problema sta nel spostare il salvataggio dei dati e questo causa un errato inserimento dei valori? o mi sbaglio?

    Come potrei sistemare la facenda?
    Grazie a tutti

  2. #2

  3. #3
    se usi le variabili di sessione le devi impostare così:

    Codice PHP:
    $contenuto$_POST['user'];// username inserita dal cliente
    $_SESSION['xxx']=$contenuto
    ricordandoti di inserire all'inizio di ogni pagina dove le utilizzi: session_start();

    nel cookie PHPSESSID avrai soltanto l'ID di sessione

  4. #4
    Il codice che hai indicato non l'ho avevo riportato, questo e l'altro pezzo di codice...
    Secondo me salvando le variabili di sessioni dentro un'altra cartella, del mio sito, non mi và a trovare il suo contenuto una volta richiamata..

    Codice PHP:
    $_SESSION['user']= $user;
    $_SESSION['pass']= $pass;
    $contenuto $_POST['user'];
    setcookie("Decade"$contenuto ,time()+604800); 
    Vado ad indicare la funzione che applico in ogni file per controllare se l'utente è registrato
    Codice PHP:
    $user $_SESSION['user'];//questo contenuto dovrebbe essere stato salvato dentro un'altra cartella e magari non viene ritrovato...
    if(isset($_COOKIE['xxxx']) && $_COOKIE['xxx'] == $user){ 
    Devo modificare la variabile $user mettendo un percorso assoluto di dover cercare la variabile?

  5. #5
    non capisco se vuoi usare i cookies o le sessioni per memorizzare i dati dell'utente, o entrambi.
    Da dove arrivano i valori $user e $pass all'inizio?

  6. #6
    Utilizzo entrambi, sia le sessioni che i cookie per quanto riguarda le variabili $user e $pass sono i dati che vengono inviati tramite il form di login

  7. #7
    così però non si capisce molto, perchè prima setti $_SESSION['user'] con $user e dopo invece setti il cookie con $_POST['user']?
    A questo livello di codice, $user contiene lo stesso valore che è in $_POST['user']?
    Oppure proviene da un precedente form?

    E quel $_COOKIE['xxxx'] l'hai messo così per non far vedere qui il nome oppure è proprio così nel codice?

    Hai provato a fare un print_r($_SESSION); per vedere che cosa c'è dentro, per verificare anche che il problema non sia da qualche altra parte, prima di approfondire sul percorso della sessione?

  8. #8
    Ti vado ad elencare i valori delle variabili
    $_SESSION['user'] // metto il valore username, passato tramite il form di login, in sessione
    $contenuto = $_POST['user'] //assegno a contenuto il valore della username passata per poi inserirla come contenuto del cookie potevo anche non farlo ma mettendo contenuto rende la lettura più facile a una modifica futura..

    $COOKIE['xxx'] // non ho xxx è solo per non mettere il reale contenuto non si sà mail

    Per quanto riguarda il print_r l'ho fatto e vedo il valore inserito mentre ho provato a stampare il contenuto del cookie e non viene stampato nulla per questo dico che il problema sta nel cookie il suo contenuto è quanto segue:

    Nome: PHPSESSID
    Contenuto: 7ea5fe0519eb2ef9224910402db1f119

    E questo numero è effettivamente un file creato per la sessione, dentro la cartella impostata con session_save_path solo che il file davanti al numero ha la stringa sess_

    Secondo me il salvataggio delle sessioni in una cartella mi ha incasinato l'invio del cookie..

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 © 2024 vBulletin Solutions, Inc. All rights reserved.