Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 23
  1. #1

    Problemi con le Session

    Ciao a tutti,

    Sto impazzendo con le session. Ho due pagine; 1 che riceve dati da un form e le analizza ed in base a questi dati ne estrapola altri da un database MySQL, mentre la seconda pagina dovrebbe ricevere i dati estrapolati per formattarli visualizzarli. Per passare i dati da una pagina all'altra sono ricorso ad una sessione, come avevo fatto già in precedenza; solo che stavolta non funziona!!!

    Questi gli script delle due pagine, modificate per fare delle prove.

    codice:
    Pagina 1
    <?php
    session_start();
    
    //sezione dello script che si collega al database e fa la query
    
    	$result = mysql_query($query)
           		or die ("Couldn't execute query.");
     	$Risultato = mysql_fetch_array($result);
      	
     	if (!$Risultato){
     		echo "<h4 align='center'>Spiacente, lei non risulta registrato, prego prima registrarsi</h4>";
     		}else{
     		foreach($Risultato as $key => $value){
     			$_SESSION[$key] = $value;
     			}
     		print_r ($_SESSION); //tanto per vedere il contenuto di $_SESSION 
     		echo "vai all'ordine";	
    		}
    ?>
    codice:
    pagina2 - ordine.php
    <?php
    session_start();
    print_r ($_SESSION);
    ?>
    Cliccando sul link "vai all'ordine" nella prima pagina ha come risultato
    codice:
    Array ( )
    Mentre il print_r nella prima pagina mostra il contenuto dell'array $_SESSION.

    Non capisco dove sta l'errore. Ho altri script con sessioni che funzionano alla meraviglia, ma questa non ne vuole sapere.

    Qualcuno ha un idea.

    Grazie
    Ciao

  2. #2
    Utente di HTML.it L'avatar di *Ray*
    Registrato dal
    Oct 2000
    Messaggi
    495
    L'unica cosa che mi viene in mente e' che tu debba passare il sessionid a mano perche' nel php.ini non c'e' l'impostazione di 'transparent session id' (non ricordo il nome esatto).

    L'alternativa e' che tu abbia disabilitato i cookies.

    Non vedo altre possibilita' perche' lo script sembra a posto

  3. #3
    Il fatto è che ho altri script che usano le session in modo simile e che invece funzionano...
    l'unica differenza è che negli altri casi la $_SESSION riceve chiave e valori da un Form mediante $HTTP_POST_VARS, mentre in questo caso li riceve da un array normale
    codice:
    ($Risultato = mysql_fetch_array($result);)
    ma non vedo cosa cambia e comunque le chiavi e i valori sono attribuiti correttamente, come posso vedere da la print_r...

    Ci sto iscendo di testa

  4. #4
    Utente di HTML.it L'avatar di *Ray*
    Registrato dal
    Oct 2000
    Messaggi
    495
    La mia domanda e' semplicemente: ma girano sullo stesso host, con le stesse impostazioni?

  5. #5
    Sì tutto uguale... Proprio in questo momento li sto confrontando, ma non vedo nessuna rilevante differenza...

  6. #6
    Utente di HTML.it L'avatar di *Ray*
    Registrato dal
    Oct 2000
    Messaggi
    495
    Prova a spostare questo su un host dove uno script analogo ti funziona e vedere se li' ti va.

  7. #7
    Sono su un server locale e cmq senza cambiare niente (nemmeno chiudendo Explorer volendo) gli altri funzionano e questo no.

  8. #8
    Utente di HTML.it L'avatar di *Ray*
    Registrato dal
    Oct 2000
    Messaggi
    495
    Argh :master:

  9. #9

  10. #10
    Originariamente inviato da ilfuretto
    Sono su un server locale e cmq senza cambiare niente (nemmeno chiudendo Explorer volendo) gli altri funzionano e questo no.
    Se non vedi $_SESSION significa che session_start() non recupera la sessione e ne apre un'altra.

    Se sei in locale puoi seguire il file di sessione e vedere che ti succede. Forse hai i cookie disabilitati.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.