Category Archives: Linguaggi

CSS: media query nel 2020

Pubblicato da

Usando min-width

// Small devices (landscape phones, 576px and up)
@media (min-width: 576px) { … }

// Medium devices (tablets, 768px and up)
@media (min-width: 768px) { … }

// Large devices (desktops, 992px and up)
@media (min-width: 992px) { … }

// Extra large devices (large desktops, 1200px and up)
@media (min-width: 1200px) { … }

Usando max-width

@media (max-width: 575.98px) { … }

// Small devices (landscape phones, less than 768px)
@media (max-width: 767.98px) { … }

// Medium devices (tablets, less than 992px)
@media (max-width: 991.98px) { … }

// Large devices (desktops, less than 1200px)
@media (max-width: 1199.98px) { … }

Framework per lo sviluppo mobile: PhoneJS

Pubblicato da

Framework per lo sviluppo mobile: PhoneJS

E’ molto tempo che non scrivo un post. La ragione è semplice: troppo lavoro.
Non che mi lamenti, sia chiaro. In questo periodo storico il vero problema è NON avere lavoro.
Tuttavia quando si è impegnati su più fronti lavorativi, si acquisiscono nuovi clienti e si imbastiscono nuovi progetti, anche trovare il tempo per scrivere un semplice post diventa un’impresa ardua. Leggi tutto

PHP: i 5 metodi per settare la scrittura degli errori

Pubblicato da

PHP: i 5 metodi per settare la scrittura degli errori

Con le dovute variazioni sintattiche ci sono 5 metodi per indicare quali (e quanti) errori generati dall’esecuzione di applicativi PHP scrivere nel file di log.
I punti sottostanti fanno riferimento ad un ambiente Ubuntu/Apache ma differiscono poco con gli altri ambienti.

  1. Nel file di configurazione php.ini. Scrivendo qui l’istruzione, questa avrà effetto su tutti i virtual hosts.
  2. Nella directory conf.d. Ad esempio in Ubuntu lo troviamo in /etc/php5/apache2/conf.d . Ogni file aggiunto in questa directory si aggiunge alle istruzioni di php.ini. Nel caso di ripetizione dell’istruzione, le istruzioni in conf.d hanno la precedenza. Anche qui gli effetti sono su tutti i virtual hosts.
  3. Nella configurazione del virtual host di Apache. Generalmente lo troviamo in /etc/apache2/sites-available. Ogni virtual host può avere le sue impostazioni personalizzate e queste ultime hanno la precedenza su quelle indicate nei due punti superiori.
  4. In .htaccess. E’ possibile indicare anche in questo file il livello di error_reporting degli errori PHP. In questo caso la sintassi prevede il tag php_flag . Ha effetto solo nelle cartelle dove risiede il file .htaccess ma ha prevalenza rispetto ai metodi summensionati. In questo caso non è necessario riavviare Apache.
  5. Nel codice sorgente. L’ultimo posto è proprio indicare nel codice sorgente PHP il livello di reportistica degli errori . Basta richiamare le funzioni “error_reporting()”oppure “ini_set(“error_reporting”)”

Maggiori info sulle funzioni di error_reporting

phpList: principali problemi subito dopo l’installazione (e le soluzioni)

Pubblicato da

phpList: principali problemi subito dopo l'installazione (e le soluzioni)

phpList: principali problemi subito dopo l'installazione (e le soluzioni)

phpList è il sistema di gestione newsletter open source più diffuso al mondo.
L’installazione non richiede particolari abilità ma mi sono capitate due seccature e una rogna, risolte grazie a Google e il forum di phpList.
Racchiudo tutto qua, in questo post, in modo da non dover cercare più in futuro (e per condividere ovviamente).

Prima seccatura:

Subito dopo l’installazione, si entra nel pannello di controllo ed esce questa scritta

Running in testmode, no emails will be sent. Check your config file.

Si risolve così. http://forums.phplist.com/viewtopic.php?p=38321
Apri config.php  e setta

define ("TEST",0);

 Seconda seccatura:

Se si clicca su “Invia un messaggio” si viene reindirizzati alla pagina 404 (not found).
Si risolve così. http://forums.phplist.com/viewtopic.php?t=4114
Apri sempre config.php e setta il percorso giusto a phpList

$pageroot = '/lists';
$adminpages = '/lists/admin';

 Terza rogna:

In fase di composizione del messaggio non compare l’editor (FCKeditor).
Ci sono molte possibili cause ma a me ha funzionato in questo modo.
Cancellate la cache e poi editate il file /lists/admin/FCKeditor/editor/fckeditor.html

Cercate

// Base configuration file.
//LoadScript( '../fckconfig.js' ) ;
LoadScript( '../../?page=fckphplist&action=js4' ) ;

e modificate in

// Base configuration file.
LoadScript( '../fckconfig.js' ) ;
//LoadScript( '../../?page=fckphplist&action=js4' ) ;

Caricando quest’altro script l’editor diventa visibile (e usabile)

Link: phpList

jQuery: jTable un plugin per creare tabelle CRUD semplicemente

Pubblicato da

jQuery: jTable un plugin per creare tabelle CRUD semplicemente

jQuery: jTable un plugin per creare tabelle CRUD semplicemente

CRUD è un acronimo (Create, Read, Update, Delete) ma è anche il cruccio quotidiano di chi deve gestire dati all’interno di un database.
jTable è un  plugin per la nota libreria jQuery che ci permette di creare tabelle per la gestione dei dati (CRUD appunto) scrivendo pochissimo codice HTML e con una piccola configurazione del javascript da inserire.
jTable funziona indipendentemente dal linguaggio di programmazione, utilizza AJAX per l’aggiornamento dei dati, è localizzato in molte lingue (italiano compreso), può funzionare con diversi temi predefiniti.

Il suo utilizzo base è semplicissimo. Basta includere oltre a jQuery le righe per il plugin e per il CSS del tema scelto

<!-- Include one of jTable styles. -->
<link href="/jtable/themes/metro/blue/jtable.min.css" rel="stylesheet" type="text/css" />

<!-- Include jTable script file. -->
<script src="/jtable/jquery.jtable.min.js" type="text/javascript"></script>

Poi si crea un contenitore

<div id="PersonTableContainer"></div>

E si aggiunge il javascript per creare l’istanza jTable

<script type="text/javascript">
    $(document).ready(function () {
        $('#PersonTableContainer').jtable({
            title: 'Table of people',
            actions: {
                listAction: '/GettingStarted/PersonList',
                createAction: '/GettingStarted/CreatePerson',
                updateAction: '/GettingStarted/UpdatePerson',
                deleteAction: '/GettingStarted/DeletePerson'
            },
            fields: {
                PersonId: {
                    key: true,
                    list: false
                },
                Name: {
                    title: 'Author Name',
                    width: '40%'
                },
                Age: {
                    title: 'Age',
                    width: '20%'
                },
                RecordDate: {
                    title: 'Record date',
                    width: '30%',
                    type: 'date',
                    create: false,
                    edit: false
                }
            }
        });
    });
</script>

Le azioni (action) indicano quali sono i file che gestiscono le interazioni col db.
Ogni colonna rappresenta un campo del db e possiamo impostarne la larghezza relativa in tabella e le caratteristiche come la modificabilità, il tipo, la possibilità di ordinamento su sua base.
Le tabelle così create caricano oggetti standard JSON risultanti delle azioni succitate (qualsiasi linguaggio serverside moderno può creare questo tipo di oggetto).

jQuery: jTable un plugin per creare tabelle CRUD semplicemente

Link: jTable

Pulsanti in CSS3: il modo semplice di realizzarli

Pubblicato da

Pulsanti in CSS3: il modo semplice di realizzarli

Pulsanti in CSS3: il modo semplice di realizzarli

Le enormi potenzialità di CSS3 sono un po’ mortificate dalla ancora relativa diffusione di vecchie versioni di browser che non li supportano. E’ indubbio anche che non tutte le nuove istruzioni siano conosciute come le erano con i vecchi CSS.
Costruire dei pulsanti graficamente gradevoli e con effetti di transizione “avanzati” può diventare un gioco da ragazzi con un tool come CSS3 Button Generator di CSS Drive .

Basta selezionare colore di sfondo con il tipo di diffusione (piatta o gradiente), il grado di arrotondamento degli angoli, l’effetto di transizione, effetto hover, padding e tanto altro. Nella porzione di schermo in basso a sinistra viene immediatamente visualizzato il codice da inserire per ottenere questa classe.
E’ anche un’ottima metodologia didattica per imparare i nuovi CSS3.
Il mio consiglio è quello di testare in ogni caso il codice con le versioni più anziane dei browser per non pregiudicare l’usabilità della pagina web.

Link: CSS3 Button Generator di CSS Drive

Usare al meglio la regola @font-face con l’aiuto di Font Squirrel

Pubblicato da

Usare al meglio la regola @font-face con l'aiuto di Font Squirrel

Usare al meglio la regola @font-face con l'aiuto di Font Squirrel

Guest post del web designer Andrea Scuotto

La regola CSS @font-face permette di visualizzare una pagina web con un determinato font anche se questo non è presente sul sistema operativo dell’utente. Tutti i browser principali ora supportano questa regola.
Regola, grazie alla quale, non ci si deve accontentare più di usare solo i font più comuni installati già sui nostri computer.
Non è, però, tutto così semplice. Ci sono vari ostacoli in cui vi potreste imbattere.
Potreste, infatti, non aver la licenza legale che vi autorizza all’uso del font scelto sul web. Oppure, anche avendo la licenza, potreste non sapere come scrivere la regola CSS di @font-face in modo che vada bene per ogni browser. Per esempio, infatti, se il nostro font avesse estensione TTF non sarebbe supportato da Internet Explorer che è, invece, compatibile solo con i file Embedded OpenType (estensione EOT).
Allora cosa fare?
Ci viene in aiuto, in questi casi, Font Squirrel, un sito che fornisce font ad uso commerciale da scaricare gratuitamente.
Ecco come procedere.
Dopo aver cercato il font che ci serve, ad esempio uno molto simile a un carattere di cui non avevamo la licenza ma che ci tenevamo ad utilizzare, clicchiamo su “@font-face Kit” e dopo aver lasciato spuntato tutte le possibili estensioni (TTF, EOT, WOFF, SVG) scarichiamo un file zip, un “kit”.
Il kit che contiene file dei caratteri in vari formati, un demo html e un file css. Questo file contiene un codice css che armonizza finalmente la regola @font-face con ogni tipo di browser.
Ora dobbiamo solo copiare e incollare la regola in un nostro progetto ed il gioco è fatto.

Link: Font Squirrel

Compatta e semplifica il tuo CSS

Pubblicato da

Compatta e semplifica il tuo CSS

Compatta e semplifica il tuo CSS

I fogli di stile sono l’orgoglio del web designer. Caratterizzano un sito e mostrano quanto si possa essere abili nel controllarne la formattazione.
Capita spesso però che questi CSS diventino dei file lunghi e complessi perdendo in semplicità di manutenzione.
LESS è una filosofia di scrittura dei CSS che cerca di ridurre il numero di righe di istruzione a favore di una maggiore leggibilità e facilità di intervento.
Tramite Css2Less è possibile incollare il proprio CSS vedendo immediatamente convertito in LESS.
Il risparmio è evidente anche con CSS di poche righe.

Link: Css2Less