Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 19
  1. #1
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732

    [IE8] problema sessioni

    Ciao a tutti,

    purtroppo è difficile da spiegare ma io ci provo:

    l'altro giorno ho installato IE8 su uno dei PC che abbiamo in azienda per verificare come fosse il nuovo browser MS e mi sono accorto con raccapriccio che alcune funzionalità di siti da noi appena creati non andavano.

    Nello specifico trattasi di <SELECT> dinamiche generate in AJAX.

    Premetto subito che in realtà AJAX funziona correttamente ovvero il contenuto dinamico viene generato ed inglobato nella pagina principale senza problemi, il punto è che per le varie <SELECT> non vengono mantenuti le OPTION -> SELECTED.

    Essendo il codice che genera le <SELECT> in una pagina PHP a se utilizzo le sessioni per tenere traccia dei vari valori impostati e tutto funziona sempre bene con IE6/7, FF, Opera, Chrome ecc.

    Dove sembra essere l'inghippo di cui però non riesco a capacitarmi?

    Nell'header.php comune a tutte le pagine (ma NON presente nella pagina php delle select dinamiche) imposto un blocco di codice simile es:

    codice:
    if ($PAGINAID != 15)  {
    unset($_SESSION['news'])
    }
    Questo cosa vuole dire in 2 parole, che se sto visualizzando una pagina che non ha l'ID 15 e quindi non è la pagina di elenco news, svuoto la sessione relativa in modo che quando poi torno all'archivio news: azzero il paginato, il n° di news per schermata ecc.

    Indi per cui pur NON essendoci alcun richiamo a tale blocco di codice nella pagina PHP che genera le select dinamiche, mi trovo in questa pagina con la sessione svuotata, cosa che si risolve se nell'header.php commento il blocco codice di cui sopra ma ... NON HA SENSO!

    Il fatto, lo ripeto, è che con TUTTI gli altri browser un problema simile NON mi capita!

    Secondo voi da cosa può dipendere?

    Thanks in advance!

  2. #2
    Utente di HTML.it L'avatar di blekm
    Registrato dal
    Jun 2004
    Messaggi
    8,310
    non so se ti può aiutare, ma io avevo un problema di css con ie8.
    Aggiungendo questo meta tag, è come se il ie8 "diventasse" ie7

    codice:
    <meta http-equiv="X-UA-Compatible" content="IE=7" />
    puoi provare, ma non ti assicuro che tutto funzioni, in quanto il tuo problema è completamente diverso dal mio
    Il portale sul turismo a Lucca

    Siti web Lucca

    Vendo Tex a colori di Repubblica (primi 100 numeri) - info in pvt.

  3. #3
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    uhm ....
    IL prob non credo risieda lato server.

    VIsto che hai select dinamiche fatte in js come le crei?
    Come stringa e poi fai innerHTML oppure le crei con i metodi dom?

    Se le crei con i metodi dom dai un occhio a questa pagina e controlla la compatibilita' dei metodi usati.


    EDIT:

    nel caso hai provato la modalita' super standard?
    affianco ala barra degli indirizzi di ie8 ci sono alcune icone la prima simile ad una paginetta rottta serve per cambiare modalita' di caricamento/visualizzazione della pagina prova a cliccarla e vedere se funziona.

    Se e' cosi' devi sistemare la compatibilita' css e js della pagina.

  4. #4
    Utente di HTML.it L'avatar di brodik
    Registrato dal
    Jan 2009
    Messaggi
    765
    hai provato con selected="selected" ?

  5. #5
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Ciao ragazzi,

    in primis grazie per le risposte ma il problema non è (credo) nel JS o nell'HTML quanto nelle sessioni.

    A prescindere dalla pagina php esterna in cui creo il codice delle select, il cui contenuto richiamo in AJAX, mi trovo nella situazione in cui se creo anche una pagina di test pippo.php
    e all'interno ci metto semplicemente:

    pippo.php
    Codice PHP:
    session_start();

    print_r($_SESSION); 
    mi ritrovo MANCANTI i dati di sessione relativi ad esempio a $_SESSION['news'] precedentemente impostati.

    Es:

    header.php
    Codice PHP:
    ...
    if (
    $PAGINAID != 15) {
    unset(
    $_SESSION['news'])
    }
    .. 
    Se uso un qualsiasi browser (tranne IE8) dopo avere visitato ed impostato le variabili di sessione per l'area news richiamo pippo.php vedo la stampa GIUSTA di tutte le variabili di sessione comprese quelle dell'area news ($_SESSION['news']) ma se lo faccio con IE8 quelle variabili sono scomparse pure non essendo mai stato eseguito il comando
    Codice PHP:
    unset($_SESSION['news']) 
    visto che dalla pagina delle news NON sono mai uscito.

    Se lo commento invece va tutto a posto, ma NON ha senso perchè il pippo.php non c'è nulla che esegua l'unset.

    N.B.
    Ho già verificato che il session_id() è lo stesso tra le pagine anche su IE8.

    Non sò proprio dove sbattere la testa.

  6. #6
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Originariamente inviato da Virus_101
    uhm ....
    IL prob non credo risieda lato server.

    VIsto che hai select dinamiche fatte in js come le crei?
    Come stringa e poi fai innerHTML oppure le crei con i metodi dom?

    Se le crei con i metodi dom dai un occhio a questa pagina e controlla la compatibilita' dei metodi usati.


    EDIT:

    nel caso hai provato la modalita' super standard?
    affianco ala barra degli indirizzi di ie8 ci sono alcune icone la prima simile ad una paginetta rottta serve per cambiare modalita' di caricamento/visualizzazione della pagina prova a cliccarla e vedere se funziona.

    Se e' cosi' devi sistemare la compatibilita' css e js della pagina.
    Utilizzo il metodo load di JQuery.

    Comunque, come detto, AJAX funziona correttamente perchè le select vengono caricate in modo giusto, l'unica cosa è che non viene tenuto il selected="selected" sull'opzione corretta, questo perchè nella pagina esterna dinamica che genera l'html delle select NON vengono mantenuti i dati relativi in sessione.

  7. #7
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Allora, in un certo senso ho "risolto.

    Ho aggiunto:
    Codice PHP:
    isset($PAGINAID
    nella condizione:
    Codice PHP:
    if (isset($PAGINAID) && $PAGINAID != 14 && $PAGINAID != 15) {
    unset(
    $_SESSION[DOMINIO]['news']);

    ma NON ha senso: visto così sembra un problema legato al codice lato server (PHP) eppure il problema accadeva solo su un browser specifico.

    Idee?!?!

  8. #8
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    No beh qui è fantascienza o qualcosa mi sfugge.

    Dopo altri test arrivo alla conclusione che

    Codice PHP:
    unset($_SESSION['ciao']);
    if (
    $PAGINAID != 14 && $PAGINAID != 15) {
    unset(
    $_SESSION[DOMINIO]['inserzioni']);
    $_SESSION['ciao'] = 'ciao';

    la condizione IF sopra riportata viene valutata true su IE8 mentre sugli altri browser correttamente false.

    N.B.
    Lo sò che in realtà il browser non dovrebbe centrare NULLA visto che si sta parlando di lato SERVER ma solo su IE8 la variabile di sessione "ciao" viene impostata!!!

    se invece correggo il blocco così:
    Codice PHP:
    if (isset($PAGINAID) && $PAGINAID != 14 && $PAGINAID != 15) {
    unset(
    $_SESSION[DOMINIO]['inserzioni']);

    allora tutto va a posto ma NON mi capacito proprio. :berto:

  9. #9
    Utente di HTML.it L'avatar di Virus_101
    Registrato dal
    Sep 2008
    Messaggi
    2,497
    Aspetta hai abilitato i cookies????

  10. #10
    Utente di HTML.it L'avatar di deleted_id_48586
    Registrato dal
    Nov 2002
    Messaggi
    1,732
    Credo di si ma non penso centri qualcosa.

    Hai capito la stranezza indicata nel mio ultimo post?

    SOLO con IE8 una determinata condizione IF viene valutata TRUE.

    Lo so non avrebbe senso eppure è quello che ho davanti agli occhi.

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.