Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82

    logout include e sessioni

    Salve a tutti,
    sto facendo un sito in cui ho bisogno che i miei utenti facciano il login...e uso le sessioni

    la struttura è la seguente

    <?php
    include ("intestazione.php");
    include ("menu_top.php");
    $p="main";
    if(isset ($_GET['page'])){
    $p=$_GET['page'];
    if(!file_exists($p.".php"))
    echo "errore:non esiste la pagina richiesta";
    }
    include ($p.".php");include ("pie_pag.php");
    ?>

    e intestazione.php è:

    <?php
    session_start();
    ?>
    <html>
    <head>
    <title><?php echo $_GET['page'];?></title>
    <link href="stile.css" rel="stylesheet" type="text/css"/>
    </head>

    <body>
    <div id="intestazione">
    [img]temp_4/img/logo copia.png[/img]

    <div id="i_form">
    <?php
    include_once("funzioni.php");
    if(!isset($_SESSION['logged']) & $_SESSION['logged']== 0){
    //utente non loggato
    include("form_login.php");
    }else{
    echo $_SESSION['utente'].'utente loggato';
    include("form_logout.php");
    }
    //form_log($_SESSION['logged']);
    ?>
    </div>
    </div>

    ora quando provo a usare il tutto sembra che riesca a fare il login infatti mi visualizza l'echo ma non riesco a mantenere a visualizzare il form di logout quando l'utente ha fatto il login. come posso fare? per fare il logout che devo fare??

    Grazie mille a chiunque saprà aiutarmi
    ^_^

  2. #2
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Ci sarebbe da indicare un doppio &

    Codice PHP:
    if(!isset($_SESSION['logged']) && $_SESSION['logged']== 0){ 
    Però in quel caso dovrebbe essere un o

    Codice PHP:
    if(!isset($_SESSION['logged']) || $_SESSION['logged']== 0){ 

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  3. #3
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82
    anche se $_SESSION['logged'] == 0 significa che l'utente non è loggato??facendo così riesco a fare cmq il login ma appena cambio pagina mi viusualizza di nuovo il form di login..perchè? e perchè una volta fatto il login non riesco a visualizzare il form di logout al posto di quello di login??
    ^_^

  4. #4
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Dipende com'è la logica quando fai il login.

    Prova così, se $_SESSION['logged'] non è settata oppure contiene un valore uguale a 0 include form_login.php, nel altro caso form_logout.php.

    Codice PHP:
    <?php session_start(); ?>
    <html>
    <head>
    <title><?php echo $_GET['page'];?></title>
    <link href="stile.css" rel="stylesheet" type="text/css"/>
    </head>

    <body>
    <div id="intestazione">
    [img]temp_4/img/logo copia.png[/img]

    <div id="i_form">
    <?php
        
    include_once("funzioni.php");
        if (isset(
    $_SESSION['logged'])==false || $_SESSION['logged']==0)
        {
            
    //utente non loggato
            
    include("form_login.php");
        }
        else
        {
            
    //echo $_SESSION['utente'].'utente loggato'; // Lo metterei su form_logout.php
            
    include("form_logout.php");
        }
        
    //form_log($_SESSION['logged']);
    ?>
    </div>
    </div>

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  5. #5
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82
    no, non funziona neanche così..
    riesco fare il login come prima...ma non mi visualizza il form di logout... e una volta fatto il login quando premo su un link mi mostra di nuovo il form di login...come se non l'avessi mai fatto... credo che non veda $_SESSION['logged']...ma non so come risolvere
    ^_^

  6. #6
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Cosa dice var_dump($_SESSION)? Chiami session_start() su tutte le pagine?

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

  7. #7
    Utente di HTML.it L'avatar di atenea
    Registrato dal
    May 2009
    Messaggi
    82
    allora var_dump fatto nell'if del file intestazione.php mi da null... e session_start() lo chiamo in intestazione.php e index.php.. negli altri file in quanto fanno parte tutti di una stessa pagina.. index.php ha la funzione di mettere tutti i pezzi insieme... Devo fare session_start() cmq in TUTTI i file??
    ^_^

  8. #8
    Utente di HTML.it L'avatar di neroux
    Registrato dal
    Aug 2009
    Messaggi
    1,973
    Devi chiamare session_start() se vuoi accedere la sessione. Cosa ti dice se fai var_dump prima dell'if?

    www.sitemeer.com » Quando un sito pare irraggiungibile

    Se ti piace ci puoi trovare anche su Facebook

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.