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

    A proposito di $session

    Avete mai provato a guardare in diretta la RAI-TV? Ogni volta che si cambia canale manda in onda un piccolo spot, ma soltanto la prima volta che si accede a quel canale ...

    Bene, dovrei ottenere qualcosa di simile ma molto più facile (nel senso che non è video).
    In pratica vorrei che quando un visitatore accede alla pagina index.php (richiamata più volte nel sito da altre pagine) gli venga prima mostrata una pagina "intro"; ma questo solo al primo accesso e possibilmente senza cookies.

    Come utilizzare la variabile $session, tenuto presente che - per l'utilizzo richiesto - non vi sono problemi di sicurezza da considerare?

    Un grazie anticipato a chi vorrà rispondermi.

  2. #2
    Utilizza un cookie...

    e metti qualcosa del genere nella home.

    Codice PHP:
    if($_COOKIE['intro_visto']=='')
    {
         
    setcookie("intro_visto",1,time()+3600"/");
         
    // mostra intro


  3. #3
    Ehm, ... io cercavo proprio di evitare i coockie, che chiedono una conferma e l'utente se ne va ...
    Avevo pensato qualcosa del genere:
    1. Un cliente accede al sito? O.k., apri una sessione e
    2. mostra la pagina intro; poi, vai all'index.php:
    3. ogni volta che viene richiamata, index.php vede che è sempre la stessa sessione e non gli mostra più la pagina intro

    ... ma non so come si fa! :-)

  4. #4
    Così

    Codice PHP:
    if($_SESSION['intro_visto']=='')
    {
         
    $_SESSION['intro_visto']='1';
         
    // mostra intro


  5. #5
    Dunque, lo stupido codice di index.php che mi sta facendo perdere la testa è questo:

    <?php
    session_start();
    if($_SESSION['intro']=='')
    {
    $_SESSION['intro']='1';
    header("location: http://localhost/panealpane.eu/intro.php");
    }
    ?>
    <html>
    <head></head>
    <body>
    PAGINA INDEX.PHP
    </body>
    </html>

    Bene, chiudo il browser, lo riapro, lancio il sito e se ne frega di tutto perché non mostra mai la pagina intro.php, anche se svuoto la cache del browser prima di cominciare e lo prego in ginocchio! Ergo, sbaglio qualcosa!

  6. #6
    Originariamente inviato da enzo leva
    Dunque, lo stupido codice di index.php che mi sta facendo perdere la testa è questo:

    <?php
    session_start();
    if($_SESSION['intro']=='')
    {
    $_SESSION['intro']='1';
    header("location: http://localhost/panealpane.eu/intro.php");
    }
    ?>
    <html>
    <head></head>
    <body>
    PAGINA INDEX.PHP
    </body>
    </html>

    Bene, chiudo il browser, lo riapro, lancio il sito e se ne frega di tutto perché non mostra mai la pagina intro.php, anche se svuoto la cache del browser prima di cominciare e lo prego in ginocchio! Ergo, sbaglio qualcosa!
    Forse perche' $_SESSION['intro'] non esiste.
    Codice PHP:
    <?php 
    session_start
    ();
    if(empty(
    $_SESSION['intro']) ) 

      
    $_SESSION['intro']='1'
      
    header("location: [url]http://localhost/panealpane.eu/intro.php[/url]"); 
    }

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

  7. #7
    Che specie di indirizzo sarebbe:

    http://localhost/panealpane.eu/intro.php ?

    Per me è sbagliato: dovrebbe essere:

    http://localhost.panealpane.eu/intro.php

    oppure

    http://www.panealpane.eu/intro.php
    Tecnolgie per l'arte.
    Arti per la tecnologia.
    softhare

  8. #8
    Perche' dovrebbe essere sbagliato? E' prassi comune usare sottodirectory con lo stesso nome di un dominio.

  9. #9
    http://localhost/dominio
    è utilizzato invece di http://www.dominio
    per poter testare i siti su server locale Apache+PHP

  10. #10
    Dunque, grazie al vostro aiuto, ho trovato l'errore, era proprio qui:

    session_start();
    if(empty($_SESSION['intro']) )

    Le cose strane, però, sono altre:

    1. Non funziona su server locale Apache (il famoso localhost);

    2. Funziona su tutti i 9 browsers diversi con i quali l'ho testato (Google Chrome, Internet Explorer, Mozilla Firefox, Opera, Safari, Avant, Orca, GreenBrowser, Maxthon) , ma tutti (anche cancellando la cache) 'ricordano' il primo collegamento, ovvero non chiudono la sessione.

    C'è rimedio?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.