• User Newbie

    problema con le sessioni

    Salve a tutti, intanto mi presento, mi chiamo Lisa. Ho la seguente situazione: un form html invia i suoi dati allo script mail.php . Questo script deve salvare i dati, poi caricare un secondo form HTML, il quale a sua volta chiama mail2.php con altri dati. mail2.php deve prendere i dati di entrambi i form ed inviarli ad un indirizzo email.
    Ho usato questo codice:

    -- mail.php
    session_start();
    $_SESSION['numero'] = 1 + rand() % 100;
    $filename = "temp" . $_SESSION['numero'] . ".txt";
    session_write_close();
    fopen ($filename, "w");
    // scrivo tutti i dati del primo form ...

    Poi in mail2.php
    session_start();
    $filename = "temp" . $_SESSION['numero'] . ".txt";
    session_write_close();
    fopen ($filename, "r");
    // leggo tutti i dati del primo form...

    Ma mi da problemi: l'utente uno accede a mail.php e si crea il file temp34.txt ad esempio, quindi $_SESSION['numero'] contiene 34. Un secondo utente accede a mail.php e si crea temp54.txt. Però adesso $_SESSION['numero'] contiene 54 e quindi il primo utente mi va a leggere da temp54.txt e sballa tutto. Non capisco perchè $_SESSION viene condiviso in questa maniera quando dovrebbe essere specifico per ogni sessione.

    Suggerimenti? Dove sbaglio? 🙂 Grazie per l'attenzione
    shainer


  • User Attivo

    se lo provi in locale, devi chiudere il broswer per cancellare la sessione, senò si sovrappongono i valori, prova anche a metterre un regenerate_session_id(); prima dell'inizio della sessione.

    P.S.
    Spero che sia utile, dato che sono un principiante!!!