<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Idea Factory &#187; PHP</title>
	<atom:link href="http://ideafactory.it/category/php/feed" rel="self" type="application/rss+xml" />
	<link>http://ideafactory.it</link>
	<description>c&#039;e&#039; solo un modo di fare le cose: farle bene</description>
	<lastBuildDate>Thu, 01 Jul 2010 15:06:56 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Generare uman password con PHP</title>
		<link>http://ideafactory.it/php/generare-uman-password-con-php.html</link>
		<comments>http://ideafactory.it/php/generare-uman-password-con-php.html#comments</comments>
		<pubDate>Thu, 01 Jul 2010 15:06:56 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://ideafactory.it/?p=292</guid>
		<description><![CDATA[Gia immagino le facce dubbiose di chi sta leggendo questo post. Concordo che la password debba essere complessa al fine di evitare o quanto meno rallentare un brute force, ma spesso se la password è troppo ostica da ricordare viene scritta su un post-it e messa in bella mostra sul monitor! Ecco il codice di [...]]]></description>
			<content:encoded><![CDATA[<p>Gia immagino le facce dubbiose di chi sta leggendo questo post. Concordo che la password debba essere complessa al fine di evitare o quanto meno rallentare un <em>brute force</em>, ma spesso se la password è troppo ostica da ricordare viene scritta su un <em>post-it</em> e messa in bella mostra sul monitor! <img src='http://ideafactory.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Ecco il codice di una bella funzione PHP che genera delle comode <em>human password</em>:<br />
<code><br />
function humanPass($length = <img src='http://ideafactory.it/wp-includes/images/smilies/icon_cool.gif' alt='8)' class='wp-smiley' /> {<br />
$password = '';<br />
$conso=array('b','c','d','f','g','h','j','k','l','m','n','p','q','r','s','t','v','w','x','y','z');<br />
$vocal=array('a','e','i','o','u');<br />
srand((double)microtime()*1000000);<br />
for($i=1; $i&lt;=$length; $i++) {<br />
if ($i % 2) {<br />
$password.=$conso[rand(0,count($conso)-1)];<br />
} else {<br />
$password.=$vocal[rand(0,count($vocal)-1)];<br />
}<br />
}<br />
return $password;<br />
}<br />
</code><br />
Che cosa fa? Genera una stringa composta da <em>$length</em> caratteri composta da consonanti e vocali equamente alternate.</p>
<p>Se certe consonanti o vocali ci sono antipatiche basta rimuoverle dai due array e non verranno usate.</p>
<p>Ripeto: non è un sistema per generare password sicure quindi se la vostra Bibbia detta policy ferrer ignorate questo mio post.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/php/generare-uman-password-con-php.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Eclipse Galileo + Subclipse = unable to load default svn client</title>
		<link>http://ideafactory.it/php/eclipse-galileo-subclipse-unable-to-load-default-svn-client.html</link>
		<comments>http://ideafactory.it/php/eclipse-galileo-subclipse-unable-to-load-default-svn-client.html#comments</comments>
		<pubDate>Wed, 02 Sep 2009 15:41:48 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ubuntu]]></category>
		<category><![CDATA[ecplise]]></category>
		<category><![CDATA[pdt]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=252</guid>
		<description><![CDATA[Uso Eclipse (su Ubuntu) per scrivere codice PHP e dopo le difficoltà funzionali ormai superate, lo trovo uno strumento molto comodo. Ho da poco scaricato la versione &#8220;Galileo&#8221; con PDT, ma installando il plugin Subclipse (versione 1.4) , necessario per avere il supporto SVN, ricevevo sempre questo errore: unable to load default svn client. Ho [...]]]></description>
			<content:encoded><![CDATA[<p>Uso <a href="http://www.eclipse.org/" onclick="pageTracker._trackPageview('/outgoing/www.eclipse.org/?referer=');">Eclipse</a> (su Ubuntu) per scrivere codice PHP e dopo le difficoltà funzionali ormai superate, lo trovo uno strumento molto comodo.</p>
<p>Ho da poco scaricato la versione<a href="http://www.eclipse.org/downloads/" onclick="pageTracker._trackPageview('/outgoing/www.eclipse.org/downloads/?referer=');"> &#8220;Galileo&#8221; con PDT</a>, ma installando il plugin <a href="http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA" onclick="pageTracker._trackPageview('/outgoing/subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA&amp;referer=');">Subclipse</a> (versione 1.4) , necessario per avere il supporto SVN, ricevevo sempre questo errore: <strong>unable to load default svn client</strong>.</p>
<p>Ho risolto installando libsvn-java:<br />
<code><br />
sudo apt-get install libsvn-java<br />
</code></p>
<p>e poi editando il file <em>eclipse.ini</em> presente nella directory di <a href="http://www.eclipse.org/" onclick="pageTracker._trackPageview('/outgoing/www.eclipse.org/?referer=');">Eclipse</a> ed aggiungendo queste righe:</p>
<p><code><br />
-Djava.library.path=/usr/share/java/<br />
-Djava.library.path=/usr/lib/jni/<br />
</code></p>
<p>Subito dopo la direttiva &#8220;<em>-vmargs</em>&#8220;.<br />
Dopo il riavvio del programma, tutto sembra funzionare.</p>
<p>Buon coding a tutti! <img src='http://ideafactory.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/php/eclipse-galileo-subclipse-unable-to-load-default-svn-client.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Espressioni regolari</title>
		<link>http://ideafactory.it/php/espressioni-regolari.html</link>
		<comments>http://ideafactory.it/php/espressioni-regolari.html#comments</comments>
		<pubDate>Tue, 24 Mar 2009 21:55:08 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=182</guid>
		<description><![CDATA[Quando si scrive un qualsiasi tipo di software capita spesso di imbattersi nelle espressioni regolari al fine di vigilare sull&#8217;input dell&#8217;utente o per estrapolarne dei dati. Ho deciso di raccogliere le espressioni regolari per PHP più comuni, quelle che ho utilizzato di più nella mia &#8220;giovane&#8221; carriera da programmattore. E-Mail $email = "test@ideafactory.it"; if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) [...]]]></description>
			<content:encoded><![CDATA[<p>Quando si scrive un qualsiasi tipo di software capita spesso di imbattersi nelle espressioni regolari al fine di vigilare sull&#8217;input dell&#8217;utente o per estrapolarne dei dati.</p>
<p>Ho deciso di raccogliere le espressioni regolari per PHP più comuni, quelle che ho utilizzato di più nella mia &#8220;<em>giovane</em>&#8221; carriera da programmattore.</p>
<h3>E-Mail</h3>
<p><code>$email = "test@ideafactory.it";<br />
if (preg_match('/^[^0-9][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[@][a-zA-Z0-9_]+([.][a-zA-Z0-9_]+)*[.][a-zA-Z]{2,4}$/',$email)) {<br />
echo "OK";<br />
} else {<br />
echo "KO";<br />
}</code><br />
E&#8217; importante ricordare che con le espressioni regolati si verifica solo la sintassi e non la semantica, quindi un indirizzo e-mail può essere ben scritto ma inesistente!.</p>
<h3>Username</h3>
<p><code>$username = "user_name12";<br />
if (preg_match('/^[a-z\d_]{5,20}$/i', $username)) {<br />
echo "OK";<br />
} else {<br />
echo "KO";<br />
}</code><br />
La username, nel mio caso, deve essere composta da un minimo 5 ad un massimo di 20 caratteri e può contenere solo lettere, numeri e underscore &#8220;_&#8221;.</p>
<h3>Indirizzo IP</h3>
<p><code>$IP = "198.168.1.7";<br />
if (preg_match('/^(([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5]).){3}([1-9]?[0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$/',$IP)) {<br />
echo "OK";<br />
} else {<br />
echo "KO";<br />
}</code></p>
<h3>URL</h3>
<p><code>$url = "http://www.ideafactory.it/";<br />
if (preg_match('/^(http|https):\/\/([A-Z0-9][A-Z0-9_-]*(?:\.[A-Z0-9][A-Z0-9_-]*)+):?(\d+)?\/?/i', $url)) {<br />
echo "OK";<br />
} else {<br />
echo "KO";<br />
}</code></p>
<p>Un&#8217;ottima guida sulle espressioni regolari in PHP è quella fornita da <a href="http://www.html.it" onclick="pageTracker._trackPageview('/outgoing/www.html.it?referer=');">HTML.IT</a> presente<a href="http://php.html.it/articoli/leggi/851/espressioni-regolari/" onclick="pageTracker._trackPageview('/outgoing/php.html.it/articoli/leggi/851/espressioni-regolari/?referer=');"> qui</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/php/espressioni-regolari.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>eAccelerator su Debian Etch</title>
		<link>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html</link>
		<comments>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html#comments</comments>
		<pubDate>Wed, 09 Jul 2008 09:40:45 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apache]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[eAccelerator]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/2008/07/09/eaccelerator-su-debian-etch/</guid>
		<description><![CDATA[eAccelerator è un’estensione gratuita ed open source per PHP che si occupa di effettuare un lavoro di accelerazione, ottimizzazione e di cache sui vostri script scritti per l’appunto in PHP. I benefici di usare eAccelerator sono dimostrati da infiniti benchmark presenti su Internet. Sul server dove è residente www.bucchianico.net, ospitato da Sofitek e gestito tramite [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.eaccelerator.net/" onclick="pageTracker._trackPageview('/outgoing/www.eaccelerator.net/?referer=');">eAccelerator</a> è un’estensione gratuita ed open source per PHP che si occupa di effettuare un lavoro di accelerazione, ottimizzazione e di cache sui vostri script scritti per l’appunto in PHP. I benefici di usare eAccelerator sono dimostrati da infiniti benchmark presenti su Internet.<span id="more-70"></span></p>
<p>Sul server dove è residente <a href="http://www.bucchianico.net" onclick="pageTracker._trackPageview('/outgoing/www.bucchianico.net?referer=');">www.bucchianico.net</a>, ospitato da <a href="http://www.sofitek.it" onclick="pageTracker._trackPageview('/outgoing/www.sofitek.it?referer=');">Sofitek</a> e gestito tramite <a href="http://www.sofitek.it/it/soluzioni/kubigo" onclick="pageTracker._trackPageview('/outgoing/www.sofitek.it/it/soluzioni/kubigo?referer=');">Kubigo</a>, c&#8217;è una installazione LAMP e, prima di aggiungere eAccelerator al gia possente sistema, facciamo un test con Apache Benchmark (ab):</p>
<p><code><br />
ab -n1000 http://www.bucchianico.net/<br />
</code></p>
<p>Dopo un pò avremo i risultati:</p>
<p><code><br />
Time taken for tests:   670.692849 seconds<br />
Complete requests:      1000<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      29338000 bytes<br />
HTML transferred:       29006000 bytes<br />
Requests per second:    1.49 [#/sec] (mean)<br />
Time per request:       670.693 [ms] (mean)<br />
Time per request:       670.693 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          42.72 [Kbytes/sec] received<br />
</code></p>
<p>Bene, adesso installiamo eAccelerator e vediamo cosa succede.<br />
Per poter compilare eAccelerator abbiamo bisogno di <em>php5-dev</em> e <em>build-essential</em>, quindi li installiamo:<br />
<code><br />
apt-get install build-essential php5-dev<br />
</code><br />
Scarichiamo i sorgenti di eAccelerator in <em>/usr/local/src/</em>:<br />
<code><br />
wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2<br />
</code></p>
<p>Apriamo il pacchetto compresso:<br />
<code><br />
tar xvfj eaccelerator-0.9.5.3.tar.bz2<br />
</code></p>
<p>Una volta entrati nella directory appena creata, compiliamo:<br />
<code><br />
cd eaccelerator-0.9.5.3<br />
phpize<br />
./configure<br />
make<br />
make install<br />
</code></p>
<p>Se tutto è andato a buon fine abbiamo quesi finito. Adesso non resta che creare il file <em>.ini</em> che Apache carica insieme alla configurazione di PHP5.</p>
<p>La directory dove creare il file è <em>/etc/php5/conf.d/</em>, quindi:<br />
<code><br />
vi /etc/php5/conf.d/eaccelerator.ini<br />
</code></p>
<p>Al cui interno scriviamo:<br />
<code><br />
extension="eaccelerator.so"<br />
eaccelerator.shm_size="16"<br />
eaccelerator.cache_dir="/var/cache/eaccelerator"<br />
eaccelerator.enable="1"<br />
eaccelerator.optimizer="1"<br />
eaccelerator.check_mtime="1"<br />
eaccelerator.debug="0"<br />
eaccelerator.filter=""<br />
eaccelerator.shm_max="0"<br />
eaccelerator.shm_ttl="0"<br />
eaccelerator.shm_prune_period="0"<br />
eaccelerator.shm_only="0"<br />
eaccelerator.compress="1"<br />
eaccelerator.compress_level="9"<br />
</code></p>
<p>Queste impostazioni sono tratte da <a href="http://www.eaccelerator.net/wiki/Settings" onclick="pageTracker._trackPageview('/outgoing/www.eaccelerator.net/wiki/Settings?referer=');">http://www.eaccelerator.net/wiki/Settings</a> e consiglio vivamente di visitare tale pagina per meglio configurare eAccelerator in base alle proprie esigenze.</p>
<p>Salvato il file, è necessario creare la directory specificata in <em>eaccelerator.cache_dir</em> e darle i permessi giusti:<br />
<code><br />
mkdir -p /var/cache/eaccelerator<br />
chmod 0777 /var/cache/eaccelerator<br />
</code></p>
<p>Riavviamo Apache:<br />
<code><br />
/etc/init.d/apache2 restart<br />
</code></p>
<p>Adesso se puntiamo il nostro browser sul server con eAccelerator, precisamente ad una pagina PHP che ha questo codice al suo interno:</p>
<p><code><br />
&lt;?php<br />
phpinfo();<br />
?&gt;<br />
</code></p>
<p>Se, all&#8217;interno di tale pagina, cercando &#8220;eAccelerator&#8221;, è presente la relativa sezione,  abbiamo finito!:)</p>
<p>Adesso riproviamo ad eseguire il test:<br />
<code><br />
ab -n1000 http://www.bucchianico.net/<br />
</code></p>
<p>Ecco i miei risultati:<br />
<code><br />
Time taken for tests:   576.975449 seconds<br />
Complete requests:      1000<br />
Failed requests:        0<br />
Write errors:           0<br />
Total transferred:      29338000 bytes<br />
HTML transferred:       29006000 bytes<br />
Requests per second:    1.73 [#/sec] (mean)<br />
Time per request:       576.975 [ms] (mean)<br />
Time per request:       576.975 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          49.66 [Kbytes/sec] received<br />
</code></p>
<p>Il test è stato completato in 576 secondi rispetto ai 670 di prima e le richieste al secondo sono passate da 1.49 a 1,73: niente male, ma i benefici si hanno con un test che simula richieste concorrenti:</p>
<p><code><br />
ab -n1000 -c100 http://www.bucchianico.net/<br />
</code><br />
Ecco i risultati SENZA eAccelerator attivo:<br />
<code><br />
Concurrency Level:      100<br />
Time taken for tests:   219.25691 seconds<br />
Complete requests:      1000<br />
Failed requests:        7<br />
(Connect: 0, Length: 7, Exceptions: 0)<br />
Write errors:           0<br />
Non-2xx responses:      7<br />
Total transferred:      29137982 bytes<br />
HTML transferred:       28805562 bytes<br />
Requests per second:    4.57 [#/sec] (mean)<br />
Time per request:       21902.570 [ms] (mean)<br />
Time per request:       219.026 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          129.92 [Kbytes/sec] received<br />
</code><br />
Invece con eAccelerator:<br />
<code><br />
Concurrency Level:      100<br />
Time taken for tests:   134.254046 seconds<br />
Complete requests:      1000<br />
Failed requests:        7<br />
(Connect: 0, Length: 7, Exceptions: 0)<br />
Write errors:           0<br />
Non-2xx responses:      7<br />
Total transferred:      29150942 bytes<br />
HTML transferred:       28818190 bytes<br />
Requests per second:    7.45 [#/sec] (mean)<br />
Time per request:       13425.404 [ms] (mean)<br />
Time per request:       134.254 [ms] (mean, across all concurrent requests)<br />
Transfer rate:          212.04 [Kbytes/sec] received<br />
</code><br />
Beh penso che si commentino da soli&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apache/eaccelerator-su-debian-etch.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP 5 su Mac OS X Leopard</title>
		<link>http://ideafactory.it/apple/php-5-su-mac-os-x-leopard.html</link>
		<comments>http://ideafactory.it/apple/php-5-su-mac-os-x-leopard.html#comments</comments>
		<pubDate>Mon, 07 Apr 2008 08:25:21 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Condivisione]]></category>
		<category><![CDATA[Leopard]]></category>
		<category><![CDATA[PHP 5]]></category>
		<category><![CDATA[Terminale]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/2008/04/07/php-5-su-mac-os-x-leopard/</guid>
		<description><![CDATA[In Mac OS X è presente Apache e per avviarlo basta abilitare la &#8220;Condivisione web&#8221; sotto &#8220;Condivisione&#8221; che si trova in &#8220;Preferenze di sitema&#8221; nella parte &#8220;Internet e network&#8220;: Adesso con il vostro browsr di fiducia potete navigare il vostro indirizzo ip e vi verrà mostrata la pagina di benvenuto di Apache (la cui document [...]]]></description>
			<content:encoded><![CDATA[<p>In Mac OS X è presente Apache e per avviarlo basta abilitare la &#8220;<em>Condivisione web</em>&#8221; sotto &#8220;<em>Condivisione</em>&#8221; che  si trova in &#8220;<em>Preferenze di sitema</em>&#8221; nella parte &#8220;<em>Internet e network</em>&#8220;:</p>
<div align="center"><img src="http://192.168.1.7/blog/wp-content/uploads/2008/04/condivisioni.jpg" alt="Condivisioni" /></div>
<p>Adesso con il vostro browsr di fiducia potete navigare il vostro indirizzo ip e vi verrà mostrata la pagina di benvenuto di Apache (la cui document root è <em>/Library/WebServer/Documents/</em>).<br />
Se al vostro indirizzo aggiungete:<br />
<code><br />
/~nomeutente/<br />
</code><br />
Compariranno a video i contenuti HTML che si trovano sotto la directory &#8220;<em>Siti</em>&#8221; presente nella vostra home.</p>
<p>Fin qui tutto bene, ma PHP 5?.<span id="more-65"></span>Il modulo PHP di default è disabilitato, quindi lo andiamo ad abilitare editando il file:<br />
<code><br />
/etc/apache2/httpd.conf<br />
</code><br />
Per essere modificato è necessario avere i permessi di root quindi bisogna andare nel Terminale ed usare &#8220;sudo&#8221; prima di editarlo:<br />
<code><br />
sudo vi /etc/apache2/httpd.conf<br />
</code><br />
Cerchiamo questa direttiva:<br />
<code><br />
#LoadModule php5_module libexec/apache2/libphp5.so<br />
</code></p>
<p>E&#8217; necessario togliere il commento &#8220;#&#8221;, salvare il file e da Terminale riavviare Apache (se è gia stato avviato tramite &#8220;<em>Considivisione</em>&#8220;:<br />
<code><br />
sudo apachectl restart<br />
</code></p>
<p>Adesso possiamo creare un file PHP nella diretctory di Apache descritta prima che contiene:<br />
<code><br />
&lt; ?php phpinfo(); ?&gt;<br />
</code><br />
Se richiamamo la pagina dal browser e compare qualcosa (PHP Version 5.2.5) abbiamo finito!:)</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/apple/php-5-su-mac-os-x-leopard.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>jMyCake on Bakery</title>
		<link>http://ideafactory.it/cakephp/jmycake-on-bakery.html</link>
		<comments>http://ideafactory.it/cakephp/jmycake-on-bakery.html#comments</comments>
		<pubDate>Fri, 28 Mar 2008 09:37:20 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[CakePHP]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Ajax]]></category>
		<category><![CDATA[framework]]></category>
		<category><![CDATA[helper]]></category>
		<category><![CDATA[jQuery]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/2008/03/28/jmycake-on-bakery/</guid>
		<description><![CDATA[Ieri sera, mentre controllavo le visite con Google Analytics, ho visto che hanno raggiunto IdeaFactory, in cerca del jQuery Autocomplete Helper, da CakePHP.jp e spulciando il sito ho trovato questo: Quindi: THANKS TO CAKEPHP.JP!!! Preso dell&#8217;entusiamo ho pubblicato il mio helper su Bakery che è un reposity di guide, tutorial e codice a cui tutti [...]]]></description>
			<content:encoded><![CDATA[<p>Ieri sera, mentre controllavo le visite con <a href="http://www.google.com/analytics/" onclick="pageTracker._trackPageview('/outgoing/www.google.com/analytics/?referer=');">Google Analytics</a>, ho visto che hanno raggiunto <a href="http://www.ideafactory.it" onclick="pageTracker._trackPageview('/outgoing/www.ideafactory.it?referer=');">IdeaFactory</a>, in cerca del <a href="http://www.ideafactory.it/2008/03/26/cakephp-jquery-autocomplete-helper/" onclick="pageTracker._trackPageview('/outgoing/www.ideafactory.it/2008/03/26/cakephp-jquery-autocomplete-helper/?referer=');">jQuery Autocomplete Helper</a>, da <a href="http://cakephp.jp" onclick="pageTracker._trackPageview('/outgoing/cakephp.jp?referer=');">CakePHP.jp</a> e spulciando il sito ho trovato <a href="http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=1063&amp;forum=12&amp;post_id=2138#forumpost2138" onclick="pageTracker._trackPageview('/outgoing/cakephp.jp/modules/newbb/viewtopic.php?topic_id=1063_amp_forum=12_amp_post_id=2138_forumpost2138&amp;referer=');">questo</a>:</p>
<p><a href="http://192.168.1.7/blog/wp-content/uploads/2008/03/jp.png" title="From CakePHP.jp" rel="lightbox[62]" onclick="pageTracker._trackPageview('/outgoing/192.168.1.7/blog/wp-content/uploads/2008/03/jp.png?referer=');"></a></p>
<p style="text-align: center"><a href="http://192.168.1.7/blog/wp-content/uploads/2008/03/jp.png" title="From CakePHP.jp" rel="lightbox[62]" onclick="pageTracker._trackPageview('/outgoing/192.168.1.7/blog/wp-content/uploads/2008/03/jp.png?referer=');"><img src="http://192.168.1.7/blog/wp-content/uploads/2008/03/jp.png" alt="From CakePHP.jp" border="1" height="247" hspace="3" vspace="3" width="547" /></a></p>
<p>Quindi: <strong>THANKS TO CAKEPHP.JP!!!</strong> <img src='http://ideafactory.it/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Preso dell&#8217;entusiamo ho pubblicato il mio helper su <a href="http://bakery.cakephp.org" onclick="pageTracker._trackPageview('/outgoing/bakery.cakephp.org?referer=');">Bakery</a> che è un reposity di guide, tutorial e codice a cui tutti gli appassionati di <a href="http://www.cakephp.org" onclick="pageTracker._trackPageview('/outgoing/www.cakephp.org?referer=');">CakePHP</a> possono contribuire.</p>
<p>Spero che il mio articolo venga accettato dai moderatori, se così fosse sarà raggiungibile <a href="http://bakery.cakephp.org/articles/view/jquery-autocomplete-helper" onclick="pageTracker._trackPageview('/outgoing/bakery.cakephp.org/articles/view/jquery-autocomplete-helper?referer=');">qui</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/cakephp/jmycake-on-bakery.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Le sessioni PHP che scompaiono&#8230;</title>
		<link>http://ideafactory.it/php/le-sessioni-php-che-scompaiono.html</link>
		<comments>http://ideafactory.it/php/le-sessioni-php-che-scompaiono.html#comments</comments>
		<pubDate>Tue, 26 Jun 2007 11:03:26 +0000</pubDate>
		<dc:creator>Gianluca</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Apache]]></category>

		<guid isPermaLink="false">http://www.ideafactory.it/?p=12</guid>
		<description><![CDATA[Tanto tempo fa l&#8217;informatica era 0 o 1. Adesso fa come vuole tantè che in un server web, PHP riusciva a scrivere il file di sessione ma poi non poteva più aggiornarlo con i nuovi valori, il tutto senza errori o anomalie. Il problema? L&#8217;hard-disk! Mi è venuto in mente di cambiare il path del [...]]]></description>
			<content:encoded><![CDATA[<p>Tanto tempo fa l&#8217;informatica era 0 o 1.<br />
Adesso fa come vuole tantè che in un server web, PHP riusciva a scrivere il file di sessione ma poi non poteva più aggiornarlo con i nuovi valori, il tutto senza errori o anomalie.<br />
Il problema? L&#8217;hard-disk!<br />
Mi è venuto in mente di cambiare il path del file di sessione tramite questa direttiva:</p>
<p><code>ini_set("session.save_path","nuovo_path");</code></p>
<p>Eh meravigliosamente tutto ha funzionato&#8230;<br />
Evidentemente  la porzione di filesystem usata /var/lib/php5 ha qualche problema.<br />
Adesso l&#8217;hard-disk è stato spostato da primario a secondario nell&#8217;array RAID e pare che tutto funziona.</p>
<p>Staremo a vedere.</p>
]]></content:encoded>
			<wfw:commentRss>http://ideafactory.it/php/le-sessioni-php-che-scompaiono.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
