Deprecated: mysql_connect(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead in /home/w41258/domains/chiappucci.it/public_html/ServerScript/ban-ip/class.BanIp.php on line 15
Tips and tricks | Guido Chiappucci's Blog

Guido Chiappucci's Blog

Archive for the ‘Tips and tricks’ Category

PHP: Calcolare il giorno della Pasqua

with 2 comments

Di seguito vi propongo una classe per ricavare il giorno della Pasqua passando un determinato anno, mi è tornata utile per la realizzazione di un Planner.
Per ricavare il mese ed il giorno della Pasqua dell’anno 2012 basta chiamare il metodo Pasqua::get passando come argomento “2012″:

Pasqua::get(2012); // ritorna Array([day]=>18 [month]=>4)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
<?php
/**
 * Pasqua
 *    
 * Questa classe determia il giorno della Pasqua 
 * di un determinato anno, si basa sul calcolo detto
 * Metodo aritmetico di Gauss spiegato in questa pagina:
 * http://it.wikipedia.org/wiki/Calcolo_della_Pasqua
 * 
 * @author Guido Chiappucci
 */
class Pasqua {
 
    private static $aM = array(22, 22, 23, 23, 24, 24);
    private static $aN = array(2, 2, 3, 4, 5, 5);
 
    /**
     * Pasqua::get()
     * 
     * Il metodo get restituise un array 
     * contenente il mese ed il giorno 
     * della Pasqua riferita all'anno 
     * passato al metodo attraverso $year
     *  
     * @param integer $year
     * @return array
     */
    public static function get($year) {
 
        $a = $year % 19;
        $b = $year % 4;
        $c = $year % 7;
 
        $aIndex= floor($year/100)-15;
 
        $d = (19 * $a + self::$aM[$aIndex]) % 30;
        $e = (2 * $b + 4 * $c + 6 * $d + self::$aN[$aIndex]) % 7;
 
        $day = 22 + $d + $e;
        $month = 3;
 
        if ($day > 31) {
            $month = 4;
            $day -= 31;
        }
 
        /**
         * Eccezioni:
         * - Se la data risultante dalla formula è il 26 aprile, 
         *   allora la Pasqua cadrà il giorno 19 aprile;
         * - Se la data risultante dalla formula è il 25 aprile 
         *   e contemporaneamente d = 28, e = 6 e a > 10, 
         *   allora la Pasqua cadrà il 18 aprile. 
         */
        if ($month == 4 && $day == 26) {
            $day = 19;
        } elseif ($month == 4 && $day == 26 && $d == 28 && $e == 6 && $a > 10) {
            $day = 18;
        } 
 
        return array('day'=>$day,'month'=>$month);
 
    }
 
}
 
?>

Written by Guido

gennaio 31st, 2012 at 12:34 am

Posted in PHP,Programmazione,Tips and tricks

Tagged with

Highcharts: nascondere i valori zero nei dataLabels

without comments

Utilizzando la libreria Highcharts ho avuto la necessità di non dover stampare i valori 0 (zero) all’interno dei dataLabels, quindi documentandomi un po’ sono arrivato alla soluzione agendo sul parametro formatter:

1
2
3
4
5
6
7
8
9
dataLabels: {
    formatter: function() {
        if (this.y == 0) {
            return "";
        } else {
            return this.y;
        }
    }
}

Highcharts

Written by Guido

agosto 31st, 2011 at 6:33 pm

MySql: select order by id in()

without comments

MySQLQuando si recuperano dei record con una query del tipo SELECT * FROM `tbl` WHERE `ID` IN(34,785,345,43) può essere necessario ordinare il risultato della query seguendo l’ordine in cui vengono passati i valori all’istruzione IN(), per fare questo basta usare la seguente istruzione order: ORDER BY FIELD(`ID`, 34, 785, 345, 43), quindi, SELECT * FROM `tbl` WHERE `ID` IN(34,785,345,43) ORDER BY FIELD(`ID`, 34, 785, 345, 43)

Written by Guido

luglio 30th, 2011 at 11:41 pm

Posted in MySql,Tips and tricks

Tagged with

Shadowbox: cambio immagine al click sulla foto

without comments

Ultimamente mi è stato chiesto di far funzionare lo scorrimento delle immagini su Shadowbox anche quando viene cliccata l’immagine corrente. Ho cercato in vari forum e tutti suggerivano di modificare in vari modi i sorgenti di Shadowbox ma questo metodo non mi convinceva molto, se domani aggiornano il js? Meglio procedere diversamente.

Consultando la documentazione ufficiale di Shadowbox ho scoperto che esiste l’opzione onOpen, quindi aggiungendo una riga di jQuery ho ottenuto quello che volevo senza modificare in nessun modo il sorgente.

Il codice funzionante è il seguente:

1
2
3
4
5
6
7
Shadowbox.init({
    modal: true,
    continuous: true,
    onOpen: function(galleryElement) {
        $("#sb-body-inner").attr("onclick","Shadowbox.next()");
    }
});

Written by Guido

maggio 31st, 2011 at 6:09 pm

Installare PhpMyAdmin su Ubuntu

with 2 comments

Se vogliamo utilizzare PhpMyAdmin sul nostro Ubuntu bastano pochi semplici passaggi.

Prima di tutto dobbiamo installare il pacchetto, quindi eseguiamo il comando sudo apt-get install phpmyadmin e rispondiamo alle semplici domande che ci vengono rivolte durante l’installazione.

Al termine dell’installazione dobbiamo dire al nostro Apache dove si trova il file di configurazione di PhpMyAdmin che ci permetterà di eseguirlo dal browser, quindi apriamo il file apache2.conf con il nostro editor preferito, ad esempio con sudo nano /etc/apache2/apache2.conf, ed aggiungiamo alla fine del file la seguente riga: Include /etc/phpmyadmin/apache.conf . Ora non ci resta che salvare il file e riavviare il server web con sudo /etc/init.d/apache2 restart.

A questo punto possiamo accedere al programma dall’indirizzo: http://localhost/phpmyadmin

Written by Guido

marzo 17th, 2011 at 11:05 pm

Posted in Linux,MySql,Tips and tricks

Tagged with ,

Sitecom wl-315: wireless usb adapter 300N su Ubuntu

with 11 comments

Sitecom_WL-315Se utilizzate Ubuntu 10.10  e avete un ricevitore usb wireless Sitecom wl-315 vi sarete accorti che la periferica viene vista dal sistema ma non riesce a collegarsi alla rete.

Per risolvere questo problema basta aggiungere al file /etc/modprobe.d/blacklist.conf la seguente riga :

blacklist rt2800usb

Occorre riavviare il sistema e la periferica funzionerà correttamente.

Written by Guido

novembre 11th, 2010 at 12:04 am

Posted in Linux,Tips and tricks

Tagged with , ,

PSPad editor: esportare gli account ftp

without comments

È arrivato il pc nuovo e come da prassi è giunta l’ora di trasferire tutto il contenuto del vecchio computer su questo nuovo “bolide”.
Tutto semplice ma di fronte a PSPad mi sono reso conto che non esiste una funzione di esportazione delle connessioni FTP…

Ecco come operare:

Nella casella Esegui di Windows lanciare il comando %appdata%\pspad.

Recuperare il file PSPadFTP.INI (contiene le impostazioni FTP).

Sulla nuova macchina ripetere l’istruzione %appdata%\pspad e copiare all’interno della crtella il file PSPadFTP.INI recuperato in precedenza.

Avviare PSPad!

Io ho fatto questa operazione da Windows XP verso Windows 7 senza riscontrare alcun problema.

Written by Guido

aprile 2nd, 2010 at 11:03 am