Oggi a lavoro, nella mia nuova società Advertalis (così nuova che non ha ancora il sito, ehmm…), da un cliente mi è stato richiesto un piccolo script in php con creazione di cookie.
Lo scopo è identificare se il visitatore è nuovo oppure è già venuto sul sito e mostrargli un messaggio diverso in base al caso.
Non è niente di chè, ma può essere interessante per chi non ha troppe conoscenze di php. Poi potrebbe servirmi di nuovo in futuro, quindi ho deciso di “annotarmela” qua.
INIZIAMO: Per creare il cookie correttamente, non bisogna inserire altri comandi o tag html prima di queste righe di codice:
<?php
/*
Scadenza del cookie:
una volta scaduto, l’utente sarà riconosciuto come “nuovo”
è stato inserito 60*60*24*30 (corrispondente a 1 mese - sec*min*hh*gg) per comodità,
in realtà il valore è in secondi
*/
$expiration = time() + 60*60*24*30;//testo da visualizzare per nuovo utente (o prima visita),
$firstVisit = ‘This is the first visit’;//testo da visualizzare alla seconda o successiva visita
$secondVisit = ‘Returning visitor’;if($_COOKIE['AAA-WelcomeCookie']) {
$welcometext = $secondVisit;
} else {
setcookie(’AAA-WelcomeCookie’, date(”H:i - Y/m/d”), $expiration);
$welcometext = $firstVisit;
}
?>
<html>
<head>
…continua con l’header… poi, nel BODY, inserire a piacere questo codice php per visualizzare il messaggio:
<body>
…
<?php echo $welcometext; ?>
…
</body>
</html>
Questo è tutto, semplice semplice e senza pretese.
Ringrazio Klevis, il mio nuovo programmatore in via di addestramento, che ha scritto materialmente queste righe di codice. ![]()
Si sa, per quel che riguarda i CSS (Cascade Style Sheets o fogli di stile) Internet Explorer è tra i browser peggiori.
Non interpreta correttamente (come da manuale w3c) le proprietà dei css e li legge a modo suo.
Firefox invece è molto più aderente allo standard ufficiale, ma non tutti usano Firefox.
Così, quando bisogna centrare un <div> o un’altro elemento le cose si complicano. Per evitare il classico <center></center> ed avere la compatibilità su tutti i browsers un modo c’è, ma bisogna fare un piccolo trick.
Visto che mi capita di farlo spesso lo scrivo qua come promemoria personale, magari utile anche a qualcun’altro.
Il “trucco” è questo.
Bisogna creare 2 <div> uno dentro l’altro, in questo modo:
<div id="contenitore1">
<div id="contenitore2">Contenuto, testo, foto, ecc...</div>
</div>
Poi bisogna creare gli stili nell’header della pagina o in un file .css a parte:
#contenitore1 {
text-align: center; /* per Internet Explorer */
}#contenitore2 {
margin: 0 auto; /* allineamento standard in CSS */
text-align: left; /* compensiamo l’allineamento al centro */
/* AGGIUNTI SOLO PER VISUALIZZARE MEGLIO L’ESEMPIO: */
border: 2px solid #000;
width: 50%;
}
Ecco fatto, il trucco è tutto qui.
Buon allineamento!


Nel maggio 2008 sono stato uno dei 4 fortunati vincitori del seo contest "


