Forum di Matriz

Versione completa: Pagina di Benvenuto (Entra o Esci)
Al momento stai visualizzando i contenuti in una versione ridotta. Visualizza la versione completa e formattata.
Per il mio nuovo sito, vorrei realizzare una pagina di benvenuto con i classici collegamenti ENTRA o EXIT.
Però vorrei fare in modo che questo sia visualizzabile dall'utente solo la prima volta che entra nel sito.

Ad esempio,
Giuseppe va su www.sito.com per la prima volta. Visualizza la pagina di venvenuto, cioè www.sito.com/index.html. Lui decide di entrare, quindi va nella pagina index.php e naviga tranquillamente. Poi esce dal sito e dopo 3-4 ore va di nuovo nel sito www.sito.com, ma questa volta accede subito alla index.php (quindi senza la pagina di benvenuto).

Poi se passano almeno 24 ore dalla sua ultima visita, vedrà di nuovo la pagina di benvenuto.

Non so se sono stato chiaroBig Grin
Una cosa del genere è realizzabile?
Potresti usare i cookie o le sessioni. Con i cookie puoi fare la cosa delle 24 ore in modo più preciso ma i cookie possono essere cancellati dall'utente. Le sessioni vengono cancellate quando viene chiuso il browser e quindi potrebbero durare meno di 24 ore.
Secondo me, è meglio, in questo caso usare i cookie. I cookie si possono gestire anche in JavaScript, ma, sempre secondo me, è molto più facile gestirli con PHP.
Nella pagina di benvenuto dovrai controllare se il cookie esiste ed effettuare eventualmente il redirect:
Codice PHP:
<?php
if(isset($_COOKIE['entrato'])){
    
header('Location: index2.php');
    exit();
}
?>

Poi potrai risettare il cookie della durata di 24 ore:
Codice PHP:
setcookie('entrato',1,time()+86400,'/'); 

Quindi il risultato finale della pagina di benvenuto sarà:
Codice PHP:
<?php
if(isset($_COOKIE['entrato'])){
    
header('Location: index2.php');
    exit();
}
setcookie('entrato',1,time()+86400,'/');
?>
CONTENUTO DELLA PAGINA IN HTML 
Non c'è qualcosa che possa essere inserito in una pagina html?
Perchè vorrei fare in modo che appena uno visita il sito, va subito nella index.html, poi visualizza la index.php.
Perchè non vorrei dover rinominare la pagina index.php.

Nel caso non fosse possibile, esiste un semplice script (da inserire su index.php) che visualizza una specie di popup in cui è presente questa scelta tra "entra" ed "esci"?
Come ho scritto nel messaggio precedente puoi gestire i cookie tramite JavaScript e quindi in una pagina HTML.
Prova a modificare la pagina "index.html" seguendo questa struttura:
Codice:
<html>
<head>
...
<script type="text/javascript">
var c = document.cookie.split(';');
for(var i=0;i<c.length;i++){
    while(c[i].charAt(0)==' ')
        c[i] = c[i].substring(1,c[i].length);
    if(c[i].indexOf('entrato')==0)
        location.href = 'index.php';
}
var d = new Date();
d.setTime(d.getTime()+86400000);
document.cookie = 'entrato=1; expires='+d.toGMTString()+'; path=/';
</script>
</head>
<body>
...
</body>
</html>