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

    cambia l'id di sessione

    salve ragazzi.
    sto lavorando con delle pagine protette per il cui accesso e' necessario lavorare con le sessioni.
    il mio problema e' che dopo aver dato la possibilità all'utente di inserire dati in un database,
    faccio comparire il tastino per tornare alla pagina principale.
    effettuo questo reindirizzamento con il javascript, così:
    echo "<input type='button' value='torna indietro'
    onClick='location.href=\"principale.php\"'>

    il problema, come dice il titolo del mio post, e' che tornando nella pagina principale, cambia l'id di sessione e quindi fa rieffettuare il login all'utente.

    come mai?
    si vivono molte vite e si muore una volta sola

  2. #2
    up
    (la domanda e' poco chiara?)
    si vivono molte vite e si muore una volta sola

  3. #3
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Bisognerebbe vedere il codice nelle due paginette incriminate per capire cosa succede.

    Forse fai un session_destroy o un unset($_SESSION...)


  4. #4
    ti ringrazio molto per la disponibilità Grino
    il fatto e' che non riesco ad isolare in 600 righe di codice la parte che ti potrebbe interessare. Questo perche'...non capisco dove sia il problema!!!

    non effettuo le operazioni che hai detto tu.

    Semplicemente (e stupidamente) pensavo che finche' si restasse nella stessa finestra col browser l'id sessione non cambiasse quando invece cio' accade eccome.

    in sintesi, ecco le operazioni che eseguo:

    * mi loggo
    * riempo i campi di un form
    * i campi vengono controllati con uno script js che poi submitta i dati nella prossima pagina
    * mi dice che i dati sono stati inseriti correttamente nel database e mi compare il tasto per ricaricare la pagina iniziale (tramite js)
    * clicco e....

    mi richiede il login! Per il semplice motivo (questo e' l'unico indizio che ho fin'ora) che mi ha cambiato l'id sessione.

    scusate l'ignoranza e la poca chiarezza.
    qualche idea?
    si vivono molte vite e si muore una volta sola

  5. #5
    ho fatto un po' di prove.

    il problema e' che l'id sessione viene cambiato dal reindirizzamento effettuato col javascript.

    immagino che questo accada perche' js e' client-side e carica la pagina richiesta nella stessa finestra ma non potendo accedere al lato server, si crea una nuova sessione automaticamente. (avro' pensato bene?)

    cerco una soluzione alternativa. grazie ancora della dispo
    si vivono molte vite e si muore una volta sola

  6. #6
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    Non so che dirti, anche io faccio uso di javascript per reindirizzare i pulsanti, ma la sessione non viene persa nenche quando apro una nuova finestra. La variabile $_SESSION continua amantenere i valori corretti a meno che non vengano chiuse tutte le pagine (root e figlie)del browser o venga utilizzato l'unset o il destroy

    prova a fare un po' di debug visualizzando il contenuto di $_session nella pagina incriminata partedo dal primo session_start e poi spostandolo scendendo piano piano per vedere di isolare il punto in cui i dati scompaiono

  7. #7
    a dir la verità ho fatto una semplicissima prova con due pagine:

    pag1.php

    <?php
    session_start();
    echo "id di sessione: ".session_id();
    ?>

    <input type='button' value='clicca per andare oltre' onClick='location.href="pag2.php"'>


    pag2.php

    <?php
    session_start();
    echo "id di sessione: ".session_id();
    ?>

    <input type='button' value='torna indietro' onClick='location.href="pag1.php"'>



    e non mi mantiene l'id sessione! A questo punto credo di non aver impostato qualche variabile del php.ini
    tu che dici?
    si vivono molte vite e si muore una volta sola

  8. #8
    beh non ci crederete ma ho risolto.
    ho messo il pulsante 'torna indietro' come pulsante di submit dentro ad un form il cui action punta alla pagina precedente.
    beh così funziona!

    fra qualche secolo riusciro' a darne spiegazione...
    si vivono molte vite e si muore una volta sola

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.