PhpDay 2008

Written by Mar on 26 Gennaio 2008 – 12:47

Quest’anno si svolgerà, nel mese di Maggio e più precisamente nei giorni 23 e 24, si svolgerà la 5 edizione del PhpDay.
La località scelta per l’avvenimento è Rimini.
L’avvenimento si svolgerà nella migliore tradizione open: libero , gratuito e aperto a tutti.

I due percorsi del PhpDay saranno:

  • Enterprise, dedicato alle aziende e al marketing con attenzione ai software php usati in ambito aziendale.
  • Developer, dedicato ad argomenti tecnici, concentgrato sul codice, sulle tecniche di programmazione e sui framework.

Vi rimando a questi due articoli per maggiori informazioni:

http://www.phpday.it/site/about/ (Sito Ufficiale PhpDay)
http://blog.html.it/archivi/2008/01/25/phpday-2008.php(Articolo sul Blog di html.it)

A Presto ;)


Tags: ,
Posted in News, Php | No Comments »

Creare un Captcha in php con le librerie gd2

Written by Mar on 21 Gennaio 2008 – 19:48

Creare un captcha è semplice; bastano due procedimenti:

  • Creare l’immagine con il codice di verifica scritto sopra.
  • Creare il form che verificherà che il codice immesso in un campo input corrisponda al codice visualizzato nell’immagine.

Iniziamo con la parte più complessa (complesso solo perchè la seconda parte è semplicissima:) : la creazione dell’immagine. Per la creazione dell’immagine usiamo le librerie gd2 di php. Pe prima cosa creiamo un codice di un tot di lettere, a caso sfruttando le funzioni md5() rand() e substr(), e lo memorizziamo in sessione, ciò ci servirà dopo per verificare che ilcodice immesso dal visitatore sia corretto. La seconda cosa da fare è creare l’immagine con le funzioni della gd2; il codice che uscirà dovrebbe essere simile a questo:

<?php
session_start();
header(”Content-type: image/png”);
$x = 150;
$y = 45;
$code = substr(md5(rand()),0,6);
$_SESSION['code']=$code;
$space = $x / (strlen($code)+1);
$img = imagecreatetruecolor($x,$y);
$bg = imagecolorallocate($img,255,255,255);
$border = imagecolorallocate($img,0,0,0);
$colors[] = imagecolorallocate($img,128,64,192);
$colors[] = imagecolorallocate($img,192,64,128);
$colors[] = imagecolorallocate($img,108,192,64);
imagefilledrectangle($img,1,1,$x-2,$y-2,$bg);
imagerectangle($img,0,0,$x-1,$y-2,$border);
for ($i=0; $i< strlen ($code); $i++)
{
$color = $colors[$i % count($colors)];
imagettftext($img,28+rand(0,8),-20+rand(0,40),($i+0.3)*
$space,35+rand(0,10),$color,’comic.ttf’,$code{$i});
}
for($i=0;$i<400;$i++)
{
$x1 = rand(3,$x-3);
$y1 = rand(3,$y-3);
$x2 = $x1-2-rand(0,8);
$y2 = $y1-2-rand(0,8);
imageline($img,$x1,$y1,$x2,$y2,$colors[rand(0,count($colors)-1)]);
}
imagepng($img);
?>

Da notare quel comic.ttf, che andrà sostituito col font che vogliamo usare.Il file ttf scelto dovrà stare nela stessa directory del file captcha.

Fatto ciò salviamo il tutto in un file php, che per comodità da adesso chiamerò captcha.php.

Dopodichè dobbiamo creare il file che permetta di inserire il captcha e il relativo codice, e che permetta di verificare che il codice inserito sia corretto.
Per comodità mettiamo tutto in un’unica pagina.
Con un if controlliamo la variabile $_GET['codice'] contenuta nell’url:
se non è settata allora mandiamo alla schermata dove è contenuta l’immagine col codice captcha e con il campo input per l’inserimento del codice, altrimenti se è settata controlliamo il codice inserito dall’utente per vedere se corrisponde all’ultimo captcha memorizzato in sessione.
Quindi dovrebbe uscire un qualcosa del genere:

<?php
session_start();
if(!isset($_GET['codice'])){
echo(”<img src=\”captcha.php\” alt=\”Captcha\” /><br />\n<form method=\”get\” action=\”".$_SERVER['PHP_SELF'].”\”>\nInserisci il codice nell’immagine!<input type=\”text\” name=\”captcha\” />\n<br /><input type=\”submit\” value=\”Controlla\” />\n</form>”);
}else{
if($_GET['captcha']==$_SESSION['code']){
echo(”Il codice inserito è corretto”);
}else{
echo(”Il codice inserito è incorretto”);
}
}
?>

Ok, ora salviamo questo file con un nome qualsiasi (Es. controllo.php) eseguiamolo ed ecco il nostro captcha pronto all’uso, ecompletamente modificabile!

Alla prossima ;)


Tags: , , ,
Posted in Php, Tutorial, Web-scripting | No Comments »

Joomla Day

Written by Mar on 31 Dicembre 2007 – 17:07

Il 19 Gennaio del 2008 avrà luogo all’ “Aurelia Convention Centre & Expo”, a Roma il Joomla Day.
Questo giorno sarà dedicato a questo famoso Content Management System, Joomla, famoso ormai, oltre che in Italia, in tutto il mondo, e usato da un immenso numero di persone per amministrare il proprio sito web.
Saranno presenti creatori e sviluppatori del cms; l’ingresso è gratuito, e la partecipazione è libera, ma bisogna effettuare una registrazione, dato che c’è un limite di 500 persone.
Per ulteriori informazioni visitare il sito ufficiale:
JoomlaDay e in particolare questa pagina.


Tags: , , , , ,
Posted in Cms, News | 1 Comment »

GoPHP5, php4 muore

Written by Mar on 30 Dicembre 2007 – 12:47

Ormai php5 sta prendendo il posto del suo amato predecessore, php4, e si sta diffondendo molto velocemente, anche grazie a una serie di implementazioni, fra le quali nuove e utili funzioni e correzione di bug et similia.Inoltre ormai si parla già di un php6, in fase di sviluppo.Il php4 sta, quindi, ormai decadendo: nasce così il GoPHP5, un movimento che incita i fornitori di hosting e i creatori di cms, a passare a php5 in modo di non far sfigurare il progetto del php in generale continuando a usare la versione 4 di questo linguaggio, ormai reputata quasi “obsoleta”.Hanno aderito già a questo movimento progetti famosi , fra i quali ricordiamo phpmyadmin e drupal.
Un altro articolo riguardante questa notizia potete trovarlo su <edit>, il blog di html.it, a questa pagina:
Articolo su php5

Per quanto riguarda questo movimento, e la decisione di abbandonare php4, sono pienamente d’accordo; spero che i fornitori di hosting e i produttori dei vari cms, che non utilizzano ancora php5, cambino velocemente idea, in modo da favorire lo sviluppo di questo linguaggio con la nuova versione, per altro molto richiesta e già molto usata.

Alla prossima


Tags: , , , , , , ,
Posted in Php | No Comments »