Warning: strpos(): needle is not a string or an integer in /membri2/drudo/blog-r/index.php on line 31

Warning: strpos(): needle is not a string or an integer in /membri2/drudo/blog-r/index.php on line 37

Warning: strpos(): needle is not a string or an integer in /membri2/drudo/blog-r/index.php on line 49
blog ¦ drudo (-rw-r--r--) - Bug S.P.B. 0.5.1.1: pagina Preferenze
 
Bug S.P.B. 0.5.1.1: pagina Preferenze
Grazie alla segnalazione di Jonathan, un utente del forum SPBItalia, si è scoperto che la pagina "Preferenze" del nostro blog rimane in lingua inglese pur avendo impostato la lingua italiana!

Per risolvere il problema basta spostare la riga:

read_config();

del file setup.php PRIMA delle righe:
require_once('languages/' . $blog_config[ 'blog_language' ] . '/strings.php');
sb_language( 'setup' );

Il risultato finale deve essere quindi:
read_config();
require_once('languages/' . $blog_config[ 'blog_language' ] . '/strings.php');
sb_language( 'setup' );


Contatore visite minimale in PHP
Siete alla ricerca di un cacca-contatore visite?
Avete realizzato una paginetta una, magari con una guida, e non avete voglia di iscrivervi a servizi esterni per contare le visite alla pagina?
Il vostro spazio supporta PHP?

Bene sappiate che c'è di meglio di quello che sto per scrivere :D

Eccovi il codice molto commentato che genera in output un valore contenente il numero di visite! Ovviamente tale valore s'ha da salvare da qualche parte, quindi ho scelto un file di testo:
// nome del file su cui salvare le visite
$filename = "counter.dat";

// se il file non esiste ne crea uno con lo stesso
// nome e con un intero inizializzato a 1
if (!file_exists($filename)) {
// apro file in scrittura (crea uno nuovo se non esiste)
$fp = fopen($filename, 'w');
// scrivo nel puntatore al file il numero 1
fwrite($fp, '1');
}

// apro file in lettura
$fp = fopen($filename,'r');
// leggo una riga dal file
$count = fgets($fp);
// chiudo lo stream
fclose($fp);

$host = $_SERVER['HTTP_HOST'];

// questa condizione e' un obrobrio, l'ho trovata su uno script
// e lo riportata, ma insomma... ritorna FALSE se non di trova $host
// in $_SERVER['HTTP_REFERER']
if (!strstr($_SERVER['HTTP_REFERER'], $host)) {
// aumento di 1 (visita)
$count++;
// apro file in scrittura
$fp = fopen($filename, 'w');
// scrivo il valore di $count aumentato
fwrite($fp, $count);
// chiudo lo stream
fclose($fp);
}
echo $count;

Come ho già detto c'è di meglio:
http://www.hotscripts.com/PHP/Scripts_a ... /Counters/

Cancellare campo input al click del mouse
Mi sono sempre chiesto come implementare la scomparsa del valore di default (value) di un campo input in un form, cioè il classico "cerca nel sito..." che scompare una volta che si è sul campo!

A naso sapevo si trattava di semplice JavaScript, ma la pigrizia mi ha sempre tenuto ben lontanto dal leggere eventuali soluzioni. Ma suvvia il 2008 è iniziato da 8 giorni e mi sento rinvigorito :D

Veniamo al dunque, prima di scrivere codice vediamo l'esempio per capire di cosa stiamo parlando.
Bene ora passiamo ad un esempio d'uso andando a considerare un semplice form così fatto:
<form action="" method="post">
<p>
<input type="text" id="search" name="search" value="cerca nel sito..."
onfocus="delDefaultValue('search')" onblur="checkEmptyValue('search')" style="color: #bbb" />
<input type="submit" value="Vai!" />
</p>
</form>

Da notare sono i valori onfocus e onblur, che non fanno altro che richiamare le funzioni scritte quando serve!
Ecco infine il codice delle due funzioni JS da mettere dove preferite:
function delDefaultValue(elem) {
elemChange = document.getElementById(elem);
if (elemChange.value == elemChange.defaultValue) {
elemChange.value='';
}
elemChange.style.color = '#000';
}

function checkEmptyValue(elem) {
elemChange = document.getElementById(elem);
if (elemChange.value == '') {
elemChange.style.color = '#bbb';
elemChange.value = elemChange.defaultValue;
}
}
Ecco spero di aver aiutato qualche anima in pena :)

Problemi noti:

In caso di Javascript non attivo, il form funzionerà lo stesso (ovviamente), ma il "value" non verrà azzerato automaticamente ed inoltre il colore del testo rimarra' quello specificato in "style" all'interno della definizione dell' input.


Indietro Altre notizie