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

    Sapere se una sessione è stata creata

    Ciao a tutti. Sto facendo un sito ad un mio amico dove nella index.php faccio settare la lingua al visitatore:

    Codice PHP:
    if(!isset($_GET["language"])) 
       { 
    $_SESSION["language"] = "ita";}

    else{ 
    $_SESSION["language"] = $_GET["language"];
                
    header ("Location: home.php");
              } 
    messa in sessione la lingua ($_SESSION["language"] = $_GET["language"] faccio redirect alla pagina home.php che fa partire tutto il sito con le varie variabili inerenti alla lingua che ha scelto l'utente. Il problema arriva se invece di passare dalla index.php io vado direttamente alla home.php ovviamente la sessione non è stata creata ed è un grosso problma. Come faccio a dirgli "se la sessione $_SESSION["language"] non è stata creata impostamela su 'ita' ?"
    Ho provato con:
    Codice PHP:
    if( !session_is_registered($_SESSION["language"])) { $_SESSION["language"] == "ita";} 
    ma non funge...
    Grazie 1000 in anticipo

  2. #2
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    codice:
    if(!isset($_SESSION["language"])) { $_SESSION["language"] == "ita";}
    ovviamente deve esser preceduto dal session_start()

  3. #3
    Originariamente inviato da LuckySevenRoX
    codice:
    if(!isset($_SESSION["language"])) { $_SESSION["language"] == "ita";}
    ovviamente deve esser preceduto dal session_start()
    Scusate era solo un errore di sintassi dovuto al'esaurimento: ho messo il doppio uguale "==" come se fosse una condizione l'avrebbe visto anche Bocelli con tutto rispetto per i non vedenti

  4. #4
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    Originariamente inviato da camionistaxcaso
    Scusate era solo un errore di sintassi dovuto al'esaurimento: ho messo il doppio uguale "==" come se fosse una condizione l'avrebbe visto anche Bocelli con tutto rispetto per i non vedenti
    io non l'ho visto (ma erano le due-tre di notte.. è andata bene che sono riuscito a scrivere )

  5. #5
    Noi nottambuli del web
    Già che siamo in ballo...magari mi risolvi un problemino al quale andrò incontro a breve nel caso volessi cambiare la lingua in ogni momento durante la navigazione, cliccando sull'iconcina della lingua passando ad uno script una variabile get che reimposta la sessione ma che poi si ricorda l'url di dove era l'utente per ritornarci? dovrebbe essere una variabile $SERVER o qualcosa del genere...conosci mica? Insomma vorrei evitare che cliccando con un link ?impostalingua=eng poi mi scompaiono tutte le sezioni caricate con require()
    Grazie ancora

  6. #6
    Utente di HTML.it L'avatar di LuckySevenRoX
    Registrato dal
    Sep 2011
    residenza
    Foligno
    Messaggi
    361
    mhh non credo di aver capito qual'è il problema.. io di solito faccio così:
    in tutte le pagine all'inizio metto un controllo del tipo "se è settato il parametro "lang" sull'url aggiorna la lingua corrente e quindi carica il dizionario giusto, altrimenti usa la lingua che è stata salvata in $_SESSION['lang']"

    se ho caricato pagine o contenuti che devono essere "ricordati" per evitare di rifare tutto salvo in SESSION oppure cerco di sistemare la cosa per riottenere gli stessi risultati con qualche parametro GET.. questo ovviamente dipende da quello che devi fare..

    se ho capito bene però la tua paura è che dopo aver caricato delle pagine l'utente voglia cambiar lingua.. beh partendo dal presupposto che è difficile che qualcuno cominci 1 operazione in una lingua e poi la cambi (di solito lo fa all'inizio), se decide di cambiare a metà strada gli sta bene di ricominciare da capo

    scherzi a parte, la soluzione che uso io è quella di indirizzare il bottoncino di selezione lingua alla pagina corrente, semplicemente aggiungendo il paramentro "lang" sull'url.. situazioni più delicate devono essere affrontate nel dettaglio..

  7. #7
    e mi sa che almeno per adesso seguirò il tuo consiglio, cioè se cambia lingua si arrangia e ricomincia da capo! Grazie per il supporto

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.