PHP Widget per FriendFeed con SimpleXML e le API di FriendFeed
Pubblicato il 8/3/2010 alle 06:00

Oggi vediamo come realizzare un widget per FriendFeed utilizzando PHP e le API di FriendFeed. Si, lo so, esistono già i widget per i social network ma, siamo developers, le cose ci piace realizzarcele con le nostre manine
Cosa farà questo widget?
Visualizzerà il nostro stream di FriendFeed e sarà facilmente personalizzabile impostando opportunamente le seguenti variabili:
- width (larghezza del widget)
- borderColor (colore del bordo)
- backgroundColor (colore di sfondo)
- titleColor (colore del titolo)
- txtColor (colore del testo)
- font (tipo di font utilizzato)
Queste variabili saranno i parametri della funzione widgetCSS(), funzione, che includeremo tra i tag head della nostra pagina e che stamperà il codice CSS (sulla quale non mi soffermo molto):
<head>
<meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″ />
<title>PHP Widget per FriendFeed con SimpleXML e le API di FriendFeed</title>
<?php widgetCSS(”400″,”#3399CC”,”#E1E1E1″,”#FFFFFF”,”#3366CC”,”Verdana”); ?>
</head>
La funzione stamperà il codice CSS tramite degli echo impostando dinamicamente i valori come nell’esempio seguente:
echo ‘border-color:’ .$borderColor .’;';
Nella nostra pagina, dove faremo visualizzare il widget, includeremo la funzione widget (che fantasia eh?) che includerà il tutto tramite div e liste. I parametri della funzione sono il titolo del widget, lo username dell’utente FriendFeed e il numero di elementi da visualizzare:
function widget($title,$username,$number) {
echo ‘<div id=”widgetFF”>’;
echo ‘<div id=”widget_top”>’ .$title .’</div>’;
echo ‘<ul>’;
$xml = simplexml_load_file(’http://friendfeed-api.com/v2/feed/’ .$username .’?format=xml’);
for ($i=0;$i<$number;$i++) {
echo “<li><img src=’icon.png’ alt=’widget icon’ />” .$xml->entry[$i]->body .”</li>”;
}
echo ‘</ul>’;
echo ‘</div>’;
}
Analizziamo la funzione:
La libreria SimpleXML di PHP5 legge l’API di FriendFeed richiesta in formato XML:
http://friendfeed-api.com/v2/feed/emawebdesign?format=xml
Ovviamente l’username è inserito dinamicamente. Con un ciclo FOR stampiamo a video il contenuto dell’elemento body dell’array XML:
$xml->entry[$i]->body
Niente di più semplice, l’inclusione della funzione è la seguente:
<?php widget(”My FriendFeed”,”emawebdesign”,10); ?>
Potete vedere il widget in azione qui e scaricare i files per darci un’occhiata più da vicino
|
|
download: WidgetFF (4.63KB) added: 07/03/2010 clicks: 12 description: Widget per FriendFeed realizzato con PHP e le API di FriendFeed |
Web Developer: open source o cms fai da te?
Pubblicato il 23/12/2009 alle 13:18
Oggi le web agency, quando cercano sviluppatori con offerte di lavoro o di collaborazione, pretendono che il candidato sia in grado di lavorare con cms open source come Drupal, Joomla, Wordpress ecc.
Perchè questo? Perchè la maggior parte delle web agency non possono permettersi di sviluppare siti e applicazioni “su mirura”, lavorano con cms open source di cui, magari, si sviluppa un template o si implementa qualche plugin per una particolare esigenza. Ovviamente per ridurre tempi e costi.
Un giovane web developer allora non deve essere solo in grado di sviluppare un cms da zero ma deve saper mettere mano ai cms open source?
Come sempre dipende dagli obiettivi
Un giovane web developer, se vuole diventare un professionista con la P maiuscola, deve essere preparato su tutto e avere tutte le competenze utili:
1) Deve essere in grado di sviluppare web application da zero, qualsiasi sia il livello di difficoltà. Non devi mai accontentarti di essere in grado di sviluppare un piccolo cms che riesce ad interagire con un DB, devi porti come obiettivo quello di poter sviluppare qualsaisi tipo di web application a prescindere dal linguaggio di programmazione da utilizzare ecc.
2) Devi saper analizzare il problema “reale” del cliente, saper scrivere una buona analisi del problema. Aiutati con Modello E/R e tabelle dati.
3) Devi saper mettere mano ai cms open source perchè, anche se sei un eccellente developer e sei in grado di sviluppare qualsiasi tipo di web application, ci sarà sempre chi ti chiederà di lavorare con Drupal o con Joomla, quindi, studia questi cms e impara a “smanettare” con questi strumenti che tanto piacciono in quanto “gratuiti“.
Infine un ultimo consiglio
Se non conosci ActionScript e non hai mai lavorato con Flash, non ascoltare chi parla male del software di Adobe. Flash non è il “male” come qualcuno vuole far credere. E’ un potente strumento con cui si può realizzare di tutto: siti, applicazioni, games, video ed altro. Impara ad utilizzarlo, impara AS2 e AS3 e, soprattutto, impara a rendere i tuoi siti in Flash “amici” di SEO e Accessibilità perchè è possibile
EWD Flash Embed una comoda classe JS per embeddare filmati Flash
Pubblicato il 3/12/2009 alle 16:27
Oggi ho deciso di condividere una risorsa che potrebbe risultare molto utile soprattutto per chi lavora con Flash e i file SWF. Si tratta di una classe JavaScript, che ho realizzato con il paradigma OOP (programmazione orientata agli oggetti), di soli 4KB con cui potrai embeddare filmati Flash nelle tue pagine web in modo davvero semplice e veloce.
Il nome di questa classe è EWD Flash Embed ed è una valida alternativa ad altre risorse già note come SWFObject.
La classe JS è semplicissima da utilizzare (basta leggere la documentazione per tutti i dettagli) è cross-browser, W3C compliant e soprattutto è gratuita: la licenza con cui la rilascio è la Creative Commons Attribuzione-Non commerciale-Non opere derivate 2.5 Italia.
Ecco un esempio di utilizzo:
var fl = new flash();
fl.width(200);//Larghezza filmato
fl.height(200);//Altezza filmato
fl.src(”filmato_flash.swf”);//Nome del file
fl.align(”middle”);//Allineamento
fl.play(true);
fl.scale(”showall”);
fl.noplugin(”Per visualizzare correttamente questa pagina hai bisogno del Flash Player!”,true);
fl.embed(”mio_div”);//ID dell’elemento dove embeddare il filmato
Per scaricare la classe e per tutte le info e i dettagli potete visualizzare la pagina ufficiale: EWD Flash Embed
Convertire colori da RGB a esadecimale con PHP
Pubblicato il 27/11/2009 alle 16:29
Per convertire un colore da RGB a esadecimale in PHP potete utilizzare questa comoda funzione:
function rgb2hex($r, $g=-1, $b=-1)
{
if (is_array($r) && sizeof($r) == 3)
list($r, $g, $b) = $r;
$r = intval($r); $g = intval($g);
$b = intval($b);
$r = dechex($r<0?0:($r>255?255:$r));
$g = dechex($g<0?0:($g>255?255:$g));
$b = dechex($b<0?0:($b>255?255:$b));
$color = (strlen($r) < 2?’0′:”).$r;
$color .= (strlen($g) < 2?’0′:”).$g;
$color .= (strlen($b) < 2?’0′:”).$b;
return ‘#’.$color;
}
$color = rgb2hex(255,187,153);
echo “Hex color: ” .$color;
Ecco un semplice menu accordion con MooTools
Pubblicato il 30/10/2009 alle 13:37

Oggi vi metto a disposizione un semplice menu accordion che ho realizzato utilizzando MooTools.
Oserei definire il menu estremamente “basilare”, sarà un gioco da ragazzi renderlo graficamente accattivante o anche cambiarne struttura semplicemente modificando il file CSS.
Per utilizzare il menu includete nella vostra pagina web i seguenti files:
<script type=”text/javascript” src=”mootools.js”></script>
<script type=”text/javascript” src=”accordion.js”></script>
<link rel=”stylesheet” href=”style.css” type=”text/css” />
Inserite i DIV:
<div id=”container_accordion”> il contenitore
<div id=”accordion”> il menu
e quindi le varie voci con i rispettivi contenuti (non dimenticate gli identificatori toggler ed element):
<h3 class=”toggler“>Voce 1</h3>
<div class=”element“>
<a href=”#”>Link 01</a><br />
<a href=”#”>Link 02</a><br />
<a href=”#”>Link 03</a>
</div>
Potete vedere il menu in azione qui.
Di seguito potete scaricare il pacchetto ZIP contenente tutti i files
|
|
download: Menu Accordion (28.43KB) added: 30/10/2009 clicks: 116 description: un semplice menu accordion realizzato con MooTools |
Ecco 8 errori comuni nella programmazione Ajax da tenere sempre presenti
Pubblicato il 19/10/2009 alle 16:11

Nello sviluppo di applicazioni Ajax spesso si commettono errori molto comuni che, invece, si possono evitare tenendoli a mente in fase di progettazione. Ecco una lista di otto errori comuni da tenere sempre a mente:
01) Pagina aggiunta ai bookmarks/segnalibri, che fare?
In una pagina Ajax possono esserci molte quantità di contenuti dinamici restituiti in base alla richiesta dell’utente. Cosa succede se si vuole salvare in un segnalibro un particolare contenuto piuttosto che un altro? Il salvataggio della URL non servirebbe a nulla. Questo è un grosso problema, può essere parzialmente risolto in fase di progettazione prevedendo link permanenti ai vari stati della pagina.
02) Non informare l’utente sullo stato delle richieste
In una pagina Ajax, per ogni interazione o richiesta dell’utente, bisogna informare lo stesso su quello che sta accadendo dopo la sua richiesta visto che la pagina non cambia e rimane sempre la stessa. Per evitare che l’utente pensi che non stia accadendo nulla bisogna presentargli output temporanei come un messaggio testuale o una gif animata che simula un loader.
03) Non prevedere contenuto alternativo ad Ajax/Javascript
In una pagina che utilizza javascript o Ajax bisogna verificare che tali tecnologie siano supportate dal browser usato dall’utente. Se non supportate, gli utenti, devono essere reindirizzati su un’alternativa non Javascript/Ajax o almeno informarlo che deve attivare javascript o utilizzare un browser che supporta tali tecnologie.
04) Dimenticarsi degli Spider
Prima di realizzare un’applicazione Ajax bisogna ricordare che gli spider dei motori di ricerca potrebbero non avere accesso ai contenuti dinamici e, quindi, ovviare prevedendo una sitemap o una pagina statica che contenga i contenuti altrimenti non indicizzabili.
05) Dimenticarsi della cache
Fare diverse richieste GET alla stessa URL spesso può portare a una risposta proveniente dalla cache del browser invece che dal server. Questo problema può essere risolto aggiungendo un numero casuale alla URL a cui si invia la richiesta.
06) Trascurare una cosa importantissima come la sicurezza
Le applicazioni Ajax contengono una grossa quantità di codice lato client. Questa parte di codice può essere visualizzata senza difficoltà da chiunque è quindi importante che non contenga informazioni con dati sensibili o importanti. Le questioni delicate vanno gestite lato server.
07) Non effettuare test
Come per i CSS anche per Javascript, i diversi browser, possono avere interpretazioni diverse. Soprattutto il DOM viene gestito in modo diverso non solo tra i diversi browser ma anche tra le diverse versioni di uno stesso browser. E’ importante testare le proprie applicazioni su più piattaforme e più browser possibili.
08) Non dotare la propria applicazione Ajax di un’interfaccia user-friendly
Forse quest’aspetto è da ricordare più al designer che al programmatore ma, in alcuni casi (come il mio), le due figure coincidono. Ogni applicazione Ajax deve avere un’interfaccia semplice e intuitiva. Gli utenti devono immediatamente comprendere quali sono gli elementi della pagina su cui fare click o con i quali interagire per effettuare una richiesta.
Tu ricordi altri errori comuni che si possono commettere nella programmazione Ajax? Segnalali con un commento
Inviare E-mail da PHP
Pubblicato il 16/10/2009 alle 09:11
Per inviare e-mail, da uno script PHP, la funzione “base” da utilizzare è mail:
<?php
$to = ‘destinatario@example.com‘;
$subject = ‘oggetto della mail‘;
$message = ‘ciao come va?’;
$headers = ‘From: mittente@example.com’ . “\r\n” .
‘Reply-To: webmaster@example.com’ . “\r\n” .
‘X-Mailer: PHP/’ . phpversion();
mail($to, $subject, $message, $headers);
?>
La funzione accetta come parametri, il destinatario, l’oggetto, il messaggio e le intestazioni.
Una soluzione più sofisticata è la classe PHPmailer che, tra le tante funzioni, offre la possibilità di inviare il messaggio come HTML e di inviare le e-mail tramite i server SMTP, Sendmail, Qmail e Gmail.
Ecco un esempio di utilizzo con SMTP:
require_once(’../class.phpmailer.php’);
$mail = new PHPMailer();
$body = file_get_contents(’contents.html’);
$body = eregi_replace(”[\]“,”,$body);
$mail->IsSMTP();
$mail->Host = “mail.tuodominio.com“;
$mail->SMTPDebug = 2;
$mail->SMTPAuth = true;
$mail->Host = “mail.tuodominio.com“;
$mail->Username = “mittente@tuodominio.com“;
$mail->Password = “tuapassword“;
$mail->SetFrom(’mittente@tuodominio.com‘, ‘Tuo nome‘);
$mail->AddReplyTo(’mittente@tuodominio.com‘, ‘Tuo nome‘);
$mail->Subject = “Oggetto della e-mail“;
$mail->AltBody = “Per visualizzare questo messaggio usa un client HTML compatibile!“;
$mail->MsgHTML($body);
$address = “destinatario@example.com“;
$mail->AddAddress($address, “Nome destinatario“);
if(!$mail->Send()) {
echo “Mailer Error: ” . $mail->ErrorInfo;
} else {
echo “Messaggio inviato!“;
}
I migliori post della settimana #38
Pubblicato il 20/9/2009 alle 14:32

Di seguito i posts più interessanti di questa settimana:
1) Business Plan e Web Marketing: quale nesso?
2) Come Valutano i Link i Motori di Ricerca?
3) PHP: ottimizzare le nostre applicazioni
5) Flash Player 10: Vector vs Array
Sostituire una stringa con un’altra in JavaScript
Pubblicato il 18/9/2009 alle 14:18
Con JavaScript possiamo sostituire una stringa con un’altra utilizzando la funzione replace nel seguente modo:
var str=”ciao a tutti”;
var result = str.replace(”ciao”,”arrivederci”);
alert(result);
Un metodo alternativo prevede l’utilizzo delle funzioni split e join:
var str=”ciao a tutti”;
var result = str.split(”ciao”).join(”arrivederci”);
alert(result);
I migliori post della settimana #37
Pubblicato il 13/9/2009 alle 10:23

Di seguito i migliori posts di questa settimana:
01) Wordpress: creare uno sliseshow con gli articoli in rilievo stile magazine
02) Installazione completa di FCKEditor in Drupal
03) Diventare freelance: il processo produttivo
04) Web Copywriting: Come Scrivere Titoli Più Efficaci E Coinvolgenti Nei Tuoi Post
05) Video Guide: La Persuasione sulle Landing Page by Filippo Toso
06) Consigli per Essere un SEO Migliore
07) Il web service di Flickr e PHP: esempi avanzati
08) Perché un sito non può costare 300 euro
























