Archivi per la categoria ‘Programmazione’

Moo.rd un eccellente libreria JavaScript

Domenica, 17 Agosto 2008

Oggi voglio segnalarvi un eccellente libreria JavaScript ovvero Moo.rd che, sono sicuro, troverete ottima sotto tutti i punti di vista.

La descrizione dal sito ufficiale è:

moo.rd è una libreria javascript super leggera e object oriented basata sul framework MooTools.

E’ disegnata per offrire agli sviluppatori nuove funzionalità, potenti e flessibili, tra cui una numerosa collezione di animazioni, la possibilità di personalizzazione degli standard dei browser, metodi utility per i costruttori nativi, table management, le virtual boxes e moltissime altre ancora.

In aggiunta moo.rd è modulare, flessibile, e completamente compatibile con tutti i plug-in per MooTools.

La licenza è la GNU General Public License (GPL) e gli sviluppatori sono Riccardo Degni (il creatore di Moo.rd) e il moo.rd core team.

Vi suggerisco di visitare l’ottima sezione degli esempi cliccando qui.

Ecco un video che ICTV ha dedicato a Moo.rd:

Come nasce un programmatore?

Martedì, 5 Agosto 2008

linguaggio basic

Come nasce un programmatore? Come si capisce di essere portati per il “magico” mondo della programmazione?

Come per tutte le altre cose è qualcosa che sentiamo dentro, grande interesse, grande curiosità, grande passione!

Ci vuole anche talento oltre che studio e passione, inutile dirlo.

Personalmente ho scoperto di essere appassionato di programmazione quando ero bambino (andavo alle elementari) quando, con il mio Commodore 64, oltre a giocare ai videogiochi, studiavo il linguaggio Basic.

Qualche giorno fa ho ritrovato il vecchio manuale del mio Commodore 64..che nostalgia rivedere gli esempi sul linguaggio Basic a distanza di tanti anni!

Ho fatto alcune scansioni che potete visualizzare tramite il mio account Flickr cliccando qui.

EXT JS, un potente framework JavaScript

Mercoledì, 9 Luglio 2008

emawebdesign

Uno dei framework più potenti in circolazione è sicuramente EXT JS. Con EXT è possibile realizzare interfacce per web application molto simili a quelle delle applicazioni desktop con estrema semplicità senza dover necessariamente essere esperti di CSS.

Per farvi un’idea di quello che si può realizzare con EXT vi rimando alla sezione esempi del sito ufficiale di EXT: Samples & Demos

Senza dover scrivere notevole quantità di codice e sfruttando le API di EXT potremo integrare nei nostri lavori grid, tabs, window, panels, slider e molto altro e, inoltre, potremo utilizzare anche altri strumenti come MooTools, JQuery e Prototype poichè EXT ce lo permette.

EXT produce codice pulito ed è compatibile con tutti i browser. Permette di sfruttare le funzionalità di Ajax e si integra con Adobe Air, tecnologia, che si sta facendo sempre più strada negli ultimi tempi.

Licenza

Nell’ultima versione (2.1), EXT, è passato alla versione GPL 3. Per lavori open source o personali possiamo utilizzare EXT gratuitamente mentre per prodotti commerciali è necessario acquistare la libreria.

Se siete interessati a conoscere meglio EXT vi consiglio, inoltre, due video di ICTV:

1) Realizzare Web Application: Ext JS

2) Creare un home page a tab con Ext

Accedere alle API di Flickr con PHP

Martedì, 1 Luglio 2008

php flickr

Carlo Daniele, sul suo blog, ha pubblicato un interessante post dove spiega come accedere alle API di Flickr con PHP.

Ecco il link: Come accedere alle API di flickr con Php (Prima parte)

Paginazione dei dati con la classe phpGotoMySQL

Sabato, 28 Giugno 2008

Vediamo come realizzare una delle cose più importanti in un sito dinamico, la paginazione dei dati. Di seguito un esempio di come realizzare una paginazione dei dati sfruttando la classe phpGotoMysql.

Il codice è commentato per essere di facile comprensione e potete scaricare i files dell’esempio.

<?php

//Includiamo la classe
include(”phpgotomysql.php”);

//Istanzio la classe
$db = new db();

//Imposto il numero di record per pagina
$record_per_pagina = 4;

//Ricevo il numero di pagina corrente altrimenti imposto 1
if (isset($_GET['pagina'])) $pagina = $_GET['pagina'];
else $pagina = 1;

// Mi connetto al database
$db->connect();

//Eseguo la query
$result=$db->query(”SELECT * FROM news ORDER BY id DESC”);
//Memorizzo il numero di record risultati dalla query
$numero_record = $db->counter();

//Calcolo il numero totale di pagine
$numero_pagine = ceil($numero_record / $record_per_pagina);

// Calcolo da quale record iniziare
$prima_pagina = ($pagina - 1) * $record_per_pagina;

// Recupero i record per la pagina corrente
// utilizzando LIMIT per partire da $prima_pagina e contare fino a $record_per_pagina

$result=$db->query(”SELECT * FROM news ORDER BY id DESC LIMIT $prima_pagina, $record_per_pagina”);
$numero_record = $db->counter();

//Se c’è almeno un record visualizzo i dati
if ($numero_record>0) {

for ($i=0;$i<$numero_record;$i++) {

$id = mysql_result($result,$i,”id”);
$titolo = mysql_result($result,$i,”titolo”);
$data = mysql_result($result,$i,”data”);

echo “<b>Data:</b> ” .$data .”<br>”;
echo “<b>Titolo:</b> ” .$titolo .”<br><br>”;

}

}
//Altrimenti segnalo che non ci sono news
else echo “Nessuna news presente.”;

//Se c’è più di una pagina visualizzo i link per andare avanti e indietro tra le pagine
if ($numero_pagine > 1){
if ($pagina > 1){

$page = $pagina-1;

echo “<a href=’paginazione_phpgotomysql.php?pagina=” .$page .”‘>Indietro</a> “;

}
if ($numero_pagine > $pagina){

$page = $pagina+1;

echo “<a href=’paginazione_phpgotomysql.php?pagina=” .$page .”‘>Avanti</a></td><td align=’left’>”;

}
}

// Chiudo la connessione ad DB
$db->close();

?>

http://www.emawebdesign.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif download: Paginazione dei dati con phpGotoMySQL (2.09KB)
added: 28/06/2008
clicks: 41
description: Esempio su come realizzare una paginazione dei dati sfruttando la classe phpGotoMySQL

Inviare il contenuto di un array da PHP a Flash

Domenica, 15 Giugno 2008

Per trasferire il contenuto di un array da PHP a Flash la tecnica è molto semplice. Nel file PHP stampiamo il contenuto dell’array nel seguente modo:

<?php

$dati[0]=”Primo”;
$dati[1]=”Secondo”;
$dati[2]=”Terzo”;
$dati[3]=”Quarto”;

$numero_elementi = count($dati);

echo “&numero_elementi=” .$numero_elementi;

for ($i=0;$i<$numero_elementi;$i++)
echo “&dati_” .$i .”=” .$dati[$i];

?>

L’output del file sarà il seguente:

&numero_elementi=4&dati_0=Primo&dati_1=Secondo
&dati_2=Terzo&dati_3=Quarto

Adesso, in Flash, riceviamo le variabili utilizzando la classe loadVars (Abbiamo visto l’utilizzo della classe loadVars in questo articolo).

Dichiariamo le variabili:

var dati = new Array();
var numero_elementi:Number;
var i:Number;

Dopodichè costruiamo un ciclo for che ci permetterà di leggere le variabili:

numero_elementi = this['numero_elementi'];

for (i=0;i<numero_elementi;i++)
dati[i] = this['dati_' + i];

Dopo aver letto la variabile “numero_elementi” che ci indica la lunghezza dell’array, con il ciclo for concateniamo il nome variabile “dati_” con l’indice dell’array in modo da poter accedere alle variabili dati_0, dati_1 ecc.

A questo punto abbiamo ricevuto nell’array dati (Flash) il contenuto dell’array $dati (PHP).

Realizzare un menu dinamico in Flash e PHP

Domenica, 1 Giugno 2008

Nel tutorial di oggi vedremo come realizzare un menu dinamico in Flash e PHP.

Menu dinamico in flash

Per prima cosa realizzeremo, in Flash, un primo livello dove inserire una MovieClip con nome di istanza “menu“.

All’interno di questa MovieClip ne realizzeremo un’altra con nome di istanza “sfondo“. Colorando quest’ultima MovieClip daremo il colore al nostro menu.

Su un livello superiore inseriremo 4 campi di testo con nome di istanza “titolo“, “link1“, “link2” e “link3“. Il primo conterrà il titolo del menu e gli altri tre le voci che comporranno il nostro menu.

Rendiamo i campi di testo HTML

menu dinamico flash

..e se vogliamo usare un font particolare incorporiamo i caratteri necessari.

incorpora caratteri

Su un livello superiore inseriremo tre aree attive a cui daremo nome di istanza “tasto1“, “tasto2” e “tasto3” (che fantasia ;-) ).

area attiva flash

A queste tre aree attive corrisponderanno tre link a tre url o pagine web.

A questo punto analizziamo il file di configurazione del menu realizzato in PHP:

<?php

//Titolo del menu
$titolo = “MENU”;

//Colori
$menu_color = “0×336699″;
$title_color = “0xFFFF00″;
$links_color = “0xFFFFFF”;

//Labels delle voci del menu
$label1 = “Home”;
$label2 = “Feed RSS”;
$label3 = “Contattami”;

//Links da associare alla voci del menu
$link1 = “http://www.emawebdesign.com”;
$link2 = “http://feeds.feedburner.com/emawebdesign”;
$link3 = “http://www.emawebdesign.com/contattami”;

echo “&titolo=” .$titolo;

echo “&menu_color=” .$menu_color;
echo “&title_color=” .$title_color;
echo “&links_color=” .$links_color;

echo “&label1=” .$label1;
echo “&label2=” .$label2;
echo “&label3=” .$label3;

echo “&link1=” .$link1;
echo “&link2=” .$link2;
echo “&link3=” .$link3;

?>

Dopo aver settato tutte le variabili a nostro piacimento, verranno inviate al Flash con il comando echo scrivendo la variabile nella forma &variabile=contenuto.

Possiamo adesso inserire nel Flash un ulteriore livello dove inseriremo (sul fotogramma) il seguente codice ActionScript:

var loadData = new LoadVars();
loadData.onLoad = function (success) {
if (success) {

titolo.htmlText = this['titolo'];

_global.menu_color = this['menu_color'];
_global.title_color = this['title_color'];
_global.links_color = this['links_color'];

link1.htmlText = this['label1'];
link2.htmlText = this['label2'];
link3.htmlText = this['label3'];

_global.url1 = this['link1'];
_global.url2 = this['link2'];
_global.url3 = this['link3'];

var my_color:Color = new Color(menu.sfondo);
my_color.setRGB(_global.menu_color);

var text_format:TextFormat = new TextFormat();
text_format.color = _global.title_color;
titolo.setTextFormat(text_format);

var text_format2:TextFormat = new TextFormat();
text_format2.color = _global.links_color;
link1.setTextFormat(text_format2);
link2.setTextFormat(text_format2);
link3.setTextFormat(text_format2);

} else {
trace(”Load error!”);
}
}
loadData.load(”menu_config.php”);

tasto1.onRelease = function() {
getURL(_global.url1);
}

tasto2.onRelease = function() {
getURL(_global.url2);
}

tasto3.onRelease = function() {
getURL(_global.url3);
}

Con la funzione LoadVars caricheremo dal file PHP menu_config.php tutte le variabili e le riceveremo nel Flash nella forma variabile = this['variabile_caricata']; Con la funzione setRGB coloreremo il menu e con setTextFormat i campi di testo.

A questo punto, per completare i pulsanti, possiamo associare ad ogni istanza il comando getURL che punterà alla URL contenuta nella rispettiva variabile.

Scarica il file di esempio e prova a modificarlo. Se hai domande commenta il post o non esitare a contattarmi. Al prossimo tutorial!

http://www.emawebdesign.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif download: MenuDinamicoFlash (6.41KB)
added: 01/06/2008
clicks: 62
description: Menu dinamico in Flash

Flash - colorare testi e MovieClip dinamicamente

Martedì, 20 Maggio 2008

emawebdesign

Oggi parliamo di Flash e della possibilità che ci offre ActionScript, il linguaggio di scripting di Flash, di poter colorare in modo dinamico testi e MovieClip.

Nell’esempio di questo articolo, realizzeremo sul primo livello un movie clip a cui daremo nome di istanza “mc“.

Sul secondo livello realizzeremo un semplice gradiente per dare alla nostra clip una grafica in perfetto stile web 2.0 come amiamo dire tutti.

Sul terzo livello inseriremo un campo di testo dinamico con nome di istanza “testo“.

A questo punto, sul quarto livello, inseriremo il seguente codice ActionScript:

var my_color:Color = new Color(mc);
my_color.setRGB(0xFF0000);

var text_format:TextFormat = new TextFormat();
text_format.color = 0xFFFF00;
testo.setTextFormat(text_format);

Con le prime due righe, imposteremo un colore RGB per il MovieClip “mc“, nell’esempio il colore 0xFF0000.

Con le ultime tre righe utilizzeremo il metodo setTextFormat per applicare al campo di testo “testo” il colore 0xFFFF00.

Scarica il file d’esempio e modifica questi parametri per cambiare colore a testo e MovieClip.

Quale idea interessante ti viene con questo esempio?

Per esempio, in un sito full-flash potremo colorare dinamicamente MovieClip e testi e quindi colorare logo, menu, testi e altro. Magari se siamo anche esperti di programmazione potremo realizzarci un piccolo CMS per impostare e salvare (magari in un database) i colori da caricare e utilizzare con i metodi setRGB e setTextFormat.

http://www.emawebdesign.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif download: Scarica il file di esempio (B)
added: 21/05/2008
clicks: 70
description: Scarica il file di esempio

phpGotoMySQL class

Domenica, 20 Aprile 2008

phpGotoMysql è una classe che ho scritto in php e che consente l’interazione col database MySQL. L’utilizzo è semplice e gratuito, continuando a leggere troverete tutte le informazioni dalla licenza alla documentazione.

Licenza

La licenza è la Creative Commons 2.5 e se scaricate ed utilizzate la classe significa che avete dato il vostro assenso alle seguenti condizioni d’uso:

  • EmaWebDesign non si assume alcuna responsabilità, implicita od esplicita, su eventuali danni provocati dall’uso proprio o improprio di questo script.
  • chi utilizza questo script lo utilizza completamente a suo rischio e pericolo assumendosene tutte le responsabilità.

Versione: 1.0

http://www.emawebdesign.com/wp-content/plugins/downloads-manager/img/icons/winzip.gif download: phpGotoMySQL (1.17KB)
added: 08/05/2008
clicks: 55
description: phpGotoMySQL

Documentazione

Per settare la classe bisogna scrivere i parametri del database mysql, eccone un esempio:

var $db_host = “localhost”;
var $db_user = “root”;
var $db_pwd = “miapassword”;
var $db_name = “utenti”;

La variabile $db_host contiene l’indirizzo IP di MySQL mentre $db_user e $db_pwd l’username e la password di accesso. Infine la variabile $db_name contiene il nome del database che si andrà a utilizzare.

Per utilizzare la classe basta includerla nei file php dove si intende utilizzarla e creare una nuova istanza:

<?php

include(”phpGotoMysql.php”);

$db = new db();

?>

La funzione connect apre una connessione al database.

Utilizzo:

$db->connect();

La funzione pconnect apre una connessione persistente al database.

Utilizzo:

$db->pconnect();

La funzione close chiude la connessione al database.

Utilizzo:

$db->close();

La funzione query esegue una query di tipo select.

Utilizzo:

$db->query(”SELECT * FROM utenti”);

La funzione db_query esegue una query di tipo insert / update / delete.

Utilizzo:

$db->db_query(”DELETE FROM utenti WHERE id=1″);

La funzione counter restituisce il numero di record interessati da una query di tipo select (non funziona con insert, update e delete).

Utilizzo:

$db->query(”SELECT * FROM utenti”);

$num=$db->counter();

echo “Record interessati: ” .$num;

rows_count

La funzione rows_count restituisce il numero di record interessati da una query di tipo insert, update o delete (non funziona con select).

Utilizzo:

$query = “UPDATE utenti SET pwd=’test’ WHERE username=’test’”;

$db->db_query($query);


$num_rec = $db->rows_count($query);

La funzione encoding restituisce il nome del set di caratteri del database.

Utilizzo:

$encoding = $db->encoding();

La funzione db_info visualizza a video le informazioni sul client MySQL in uso.

Utilizzo:

$db->db_info();

La funzione last restituisce l’ultimo ID generato da una query di tipo INSERT.

Utilizzo:

$db->db_query(”INSERT INTO utenti (username,pwd) VALUES (’test’,'test’)”);

$id=$db->last();

La funzione db_list restituisce un array contenente i nomi dei database presenti in MySQL.

Utilizzo:

$lista_db = $db->db_list();
echo “DB1: ” .$lista_db[0] .”<br>”;
echo “DB2: ” .$lista_db[1] .”<br>”;

La funzione num_fields restituisce il numero dei campi presenti nella tabella specificata.

Utilizzo:

$num=$db->num_fields(”utenti”);

La funzione name_fields restituisce un array contenente i nomi dei campi di una tabella specificata.

Utilizzo:

$num=$db->name_fields(”utenti”);

for($i=0;$i<count($num);$i++)
echo “Nome: ” .$num[$i] .”<br>”;

La funzione tables restituisce un array contenente i nomi delle tabelle presenti nel database.

Utilizzo:

$nomi=$db->tables();

for($i=0;$i<count($nomi);$i++)
echo “Nome: ” .$nomi[$i] .”<br>”;

Per ottenere i campi in un risultato combinare le funzioni query e counter. Ecco un esempio:

$result=$db->query(”SELECT * FROM utenti”);
$num_rec = $db->counter();

for ($i=0;$i<$num_rec;$i++)
echo mysql_result($result,$i,”username”);

Ecco un esempio su come realizzare una paginazione dei dati sfruttando la classe phpGotoMysql.

Se hai trovato utile questa classe prendi in considerazione la possibilità di effettuare una donazione per contribuire al suo supporto e aggiornamento.

emawebdesign

Trova e sostituisci in Flash

Martedì, 18 Marzo 2008

Logo Flash

Per sostituire un carattere (o una sottostringa) in una stringa che stiamo trattando in un nostro progetto realizzato in Flash possiamo utilizzare le funzioni split e join di ActionScript.

Ecco un esempio:

var str=testo di esempio;
str = str.split(di esempio).join(sostituito);

Con questa istruzione abbiamo ottenuto la stringa “testo sostituito” dalla stringa di partenza “testo di esempio“.