• Super User

    addirittura distruggi la sessione o.O

    avresti potuto fare un unset($_SESSION['lingua_teile']);

    ma non ne vedo la necessità, in quanto puoi semplicemente sovrascriverlo.

    hai il register_globals on? Anche se si, ti sconsiglio di tenerlo attivato.

    nella tua query presupponi l'esistenza delle variabili $lingua_scelta e $id, che io non vedo settate.

    Ti consiglio VIVAMENTE di fare un controllo sulle suddette variabili, così il tuo script è vulnerabile.

    ( Se ho scritto cose che hai già fatto, posta il tuo codice per intero, mi sto basando solo su quello che vedo )


  • User Attivo

    Si , ti ringrazio per il consiglio della sicurezza ma per ora non è importante!
    Diciamo che io vorrei -solo- settare la sessione tramite un menu di scelta come da post precedente, nel momento in cui setto la sessione, in questo caso da quello che ho capito
    [PHP]session_start();

    $_SESSION['lingua_teile'] = $_GET['lingua']; [/PHP]

    vorrei che la pagina dopo prendesse il contenuto della sessione che nel mio caso sarà ```
    ita

    
    e quando eseguo la mia query che seleziona la tabella in base alla lingua scelta nel mio caso la variabile $lingua_scelta mi restituisca il valore memorizzato nella sessione....
    Pero' tutto questo non avviene, nel momento in cui richiamo il valore della sessione [PHP]$lingua_scelta = $_SESSION['lingua_teile'];[/PHP]
    
    non mi stampa nulla e quindi la query non viene eseguita....
    Suggerimenti ???
    
    Ps. register_globals è Off

  • Super User

    [PHP]
    $_SESSION['lingua_teile'] = $_GET['lingua'];
    $_SESSION['lingua_teile'] = $lingua_scelta;
    [/PHP]

    La seconda riga così ti sovrascrive la prima... con un valore non definito ( $lingua_scelta )


  • User Attivo

    Ok, è stato eliminato quindi mi rimane
    [php]session_start();

    $_SESSION['lingua_teile'] = $_GET['lingua']; [/php]che mi setta la sessione, ora per richiamarla
    [php]<?

    $lingua_scelta = $_SESSION['lingua_teile'];

    ?>[/php]ma non mi visualizza nulla .....


  • Super User

    Hai fatto ripartire la sessione? ( session_start(); )


  • User Attivo

    Si, pero' passando da una pagina all'altra non viene presa...quindi penso di sbagliare qualcosa ma non capisco cosa


  • Super User

    Guarda prova intanto a fare semplici prove...

    pagina1.php
    [php]
    <? session_start(); $_SESSION['ciao'] = 'mamma'; ?>
    <a href="pagina2.php">ciao a chi?</a>
    [/php]

    pagina2.php
    [php]
    a <? session_start(); print $_SESSION['ciao']; ?>
    [/php]


  • User Attivo

    Ciao,
    da quello che sono riuscito a capire, nella pagina in cui mi serve recuperare il nome della sessione deve esserci

    [PHP]
    session_start();
    $lingua_scelta = $_SESSION['lingua_teile'];
    [/PHP]

    Io pensavo che session_start() cancellasse la sessione creata, invece riprende la sessione creata precedentemente , giusto ?


  • Super User

    Esattamente, quando l'avevo scritto nel messaggio di prima mi riferivo alla seconda pagina, in cui, per l'appunto, non vedevo il secondo session_start().

    Hai provato a vedere se va? ( Dovrebbe andare XD )


  • User Attivo

    Funziona tutto!
    Grazie!
    Stavo diventando matto a capire perchè non funzionava!
    Ho provato a cambiare register_globals ma alla fine era solo da ricordare il session_start() all'inizio di ogni pagina che utilizza la sessione!!