<?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>Programmazione Web &#187; Applicazioni</title>
	<atom:link href="http://www.programmazione-web.com/categorie/applicazioni/feed" rel="self" type="application/rss+xml" />
	<link>http://www.programmazione-web.com</link>
	<description>il Blog open degli sviluppatori del web!</description>
	<lastBuildDate>Mon, 25 Jul 2011 16:39:01 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Il futuro per le web application è javascript!</title>
		<link>http://www.programmazione-web.com/il-futuro-per-le-web-application-e-javascript.php</link>
		<comments>http://www.programmazione-web.com/il-futuro-per-le-web-application-e-javascript.php#comments</comments>
		<pubDate>Sat, 10 Oct 2009 19:44:35 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Ajax]]></category>
		<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Jquery]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[callback]]></category>
		<category><![CDATA[web 2]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=263</guid>
		<description><![CDATA[C'è sempre più javascript nelle applicazioni moderne, il web ormai per le applicazioni web si sta spostando sempre più client side, il futuro sta proprio sulle nostre macchine non sul server.. chiamate asincrone in AJAX e logiche lato client.]]></description>
			<content:encoded><![CDATA[<p>Ebbene si&#8230; il tempo passa, ogni giorno vedo <strong>sempre più javascript nelle applicazioni moderne</strong>, il web ormai per le <strong>applicazioni web</strong> si sta spostando sempre più <strong>client side</strong>, il futuro <strong>sta proprio sulle nostre macchine </strong>non sul server, a cui viene lasciato il solo scopo di essere un<strong> contenitore di dati da interrogare</strong>, su cui mantenere e garantire le logiche di sicurezza delle nostre applicazioni, e molti automatismi di presentation ora stanno direttamente sul client! Questo grazie alle nuove necessità del web 2.0, che vuole diventare la sostituzione quasi totale alle <strong>applicazioni stand alone</strong>, quindi avere maggiori interazioni, più velocità grazie a <strong>callback asincrone di dati (AJAX) </strong>e automatismi che non necessitano postback di dati, che rendono il web inutilmente lento e macchinoso.</p>
<p>Ora poi è diventato tutto molto più semplice grazie ai numerosi <strong>framework javascript, come jQuery</strong> che grazie ad un layer aggiuntivo ci consentono di utilizzare con maggiore potenza e velocità tutta <strong>la ricchezza del linguaggio JS</strong>.</p>
<p>Attualmente chi non saprà utilizzare questi strumenti al top rimarrà indietro.. verrà schiacciato dalla concorrenza agguerrita dei<strong> programmatori del futuro</strong> che non si fermano a fare andare le proprie applicazioni, ma vogliono sempre il massimo!</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fil-futuro-per-le-web-application-e-javascript.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/il-futuro-per-le-web-application-e-javascript.php/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Commentare il codice sorgente, è inutile?</title>
		<link>http://www.programmazione-web.com/commentare-il-codice-e-inutile.php</link>
		<comments>http://www.programmazione-web.com/commentare-il-codice-e-inutile.php#comments</comments>
		<pubDate>Thu, 24 Sep 2009 11:37:09 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[MVC]]></category>
		<category><![CDATA[News dal web]]></category>
		<category><![CDATA[Sviluppo applicazioni]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[codice sorgente]]></category>
		<category><![CDATA[commenti codice]]></category>
		<category><![CDATA[sviluppo software]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=260</guid>
		<description><![CDATA[Nella stesura del codice sorgente delle applicazioni è utile o inutile abbondare di commenti? Diversi sono i punti vista, ma sicuramente l'aspetto archietetturale del software e la semantica del codice scritto possono aiutare a comprendere la logica del codice.]]></description>
			<content:encoded><![CDATA[<p>Sul sito phpnews.it ho letto questo <a href="http://www.phpnews.it/blog/2009/05/02/quanto-e-utile-commentare-il-codice/comment-page-1/#comment-2318" target="_blank">post</a> che cita altri siti/blog internazionali sull&#8217;argomento dell&#8217;utilità o meno di commentare il <strong>codice sorgente delle applicazioni</strong>. Il mio punto di vista in merito è che la cosa fondamentale quanto di <strong>scrive del codice</strong> è rendere semantica ogni istruzione, che tradotto significa dare nomi più sensati alle alle classi/metodi/proprietà e variabili che si utilizzano. Questa pratica permette di dare più senso ad ogni riga di codice e rende già tutto molto più chiaro a chi lo deve interpretare.</p>
<p>I commenti comunque possono essere utili e in certi rari casi sono fondamentali, soprattutto in <strong>procedure complesse e ricche di casistiche</strong>.. ma se si abusa si hanno sostanzialmente due svantaggi: 1) si perde tempo 2) non serve a niente o quasi a nulla.</p>
<p>Inutile quindi fare commenti su parti di codice poco complessi che sono già autoesplicativi, porzioni di codice che <strong>qualsiasi programmatore junior è in grado di leggere</strong>. Piuttosto fare molta attenzione  alla strutturazione del codice, che come già da tempo ci insegnano i grandi sviluppatori e web architects moderni, per il web tende sempre all&#8217;<strong>architettura in stile MVC</strong>, che è quella che si avvicina di più alla <strong>logica di internet</strong>…  questo semplica notevolmente la stesura, la manutenzione e la comprensione del codice scritto, oltre a rendere i moduli che compongono l&#8217;applicazione indipendenti e incapsulati.</p>
<p>Per le applicazioni software tradizionali invece apprezzo molto l&#8217;approcio code behind, business logic e data access layer</p>
<p>Quindi non abusare mai di commenti, usare nomi sensati e fate attenzione piuttosto all&#8217;<strong>architettura del software</strong>.. chiaramente <strong>object oriented</strong>!</p>
<p>In attesa di un vostro parere in merito&#8230; <img src='http://www.programmazione-web.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fcommentare-il-codice-e-inutile.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/commentare-il-codice-e-inutile.php/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Prestashop ecommerce nuova versione 1.2.1</title>
		<link>http://www.programmazione-web.com/prestashop-ecommerce-nuova-versione-1-2-1.php</link>
		<comments>http://www.programmazione-web.com/prestashop-ecommerce-nuova-versione-1-2-1.php#comments</comments>
		<pubDate>Mon, 24 Aug 2009 07:49:32 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Ecommerce]]></category>
		<category><![CDATA[News dal web]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[Prestashop]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[eshop]]></category>
		<category><![CDATA[pagamenti paypal]]></category>
		<category><![CDATA[software opensource]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=249</guid>
		<description><![CDATA[Il 12 Agosto è stata rilasciata la tanto attesa nuova versione 1.2.1 di Prestashop, il software open-source per l&#8217;ecommerce in stile web 2.0 più promettente in circolazione! La nuova release del ramo 1.2.x è il risultato del testing e del bug fixing della neo nata versione 1.2 rilasciata il 29 Giugno, che ora si presenta [...]]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-full wp-image-254" title="prestashop" src="http://www.programmazione-web.com/wp-content/uploads/2009/08/gI_prestashoplogoGM2.jpg2.jpg" alt="prestashop" width="250" height="250" /></p>
<p>Il 12 Agosto è stata rilasciata la tanto attesa nuova <strong>versione 1.2.1 di Prestashop</strong>, il <strong>software open-source per l&#8217;ecommerce in stile web 2.0</strong> più promettente in circolazione! La nuova release del ramo 1.2.x è il risultato del testing e del bug fixing della neo nata <strong>versione 1.2 rilasciata il 29 Giugno</strong>, che ora si presenta più solida ed affidabile.</p>
<p>Tra le tante novità si può citare</p>
<ul>
<li> Maggiore possibilità di gestione del catalogo: disabilitare i prodotti, gestire i prodotti che non sono in stock.</li>
<li> Sistema di tracciamento dei visitatori</li>
<li> Possibilità di creare gruppi di acquirenti, con l&#8217;associazione di coupons e permessi a certe categorie e sistemi di pagamento.</li>
<li> Statistiche filtrate da data a data</li>
<li> Possibilità di visualizzare i carelli che sono stati creati dai clienti senza essere stati evasi.</li>
<li> Possibilità di inserire files da scaricare associati ai prodotti (brochure, data-sheets, modulistica ecc)</li>
<li> Possibilità di visualizzare la tassazione IVA o IVA esclusa nei prezzi dei prodotti</li>
<li> API Paypal</li>
<li> Modulo per il reminder ai clienti più affezionati</li>
</ul>
<p><strong>Riferimenti</strong><br />
<a href="http://www.prestashop.com/blog/article/prestashop_121_is_now_available/" target="_blank">http://www.prestashop.com/blog/article/prestashop_121_is_now_available/</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fprestashop-ecommerce-nuova-versione-1-2-1.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/prestashop-ecommerce-nuova-versione-1-2-1.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Codeigniter debug con FirePHP</title>
		<link>http://www.programmazione-web.com/codeigniter-debug-con-firephp.php</link>
		<comments>http://www.programmazione-web.com/codeigniter-debug-con-firephp.php#comments</comments>
		<pubDate>Wed, 29 Jul 2009 09:57:47 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[Codeigniter]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[debuggi]]></category>
		<category><![CDATA[firebug]]></category>
		<category><![CDATA[firephp]]></category>
		<category><![CDATA[php]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=238</guid>
		<description><![CDATA[FirePHP è un componente aggiuntivo per Firefox che consente di debuggare applicazioni in PHP direttamente tramite il proprio browser. Questo add-on estende le funzionalità di FireBug consentendo di fare dei log in tempo reale e stampare i contenuti delle variabili nella console. Per iniziare a debuggare le vostre applicazioni php avrete quindi bisogno del browser [...]]]></description>
			<content:encoded><![CDATA[<p><strong>FirePHP </strong>è un <strong>componente aggiuntivo per Firefox</strong> che consente di <strong>debuggare applicazioni in PHP </strong>direttamente tramite il proprio browser. Questo add-on estende le funzionalità di <strong>FireBug </strong>consentendo di fare dei log in tempo reale e stampare i contenuti delle variabili nella console.</p>
<p>Per iniziare a debuggare le vostre applicazioni php avrete quindi bisogno del <strong>browser Firefox</strong>, di installare <strong>FireBug </strong>e <strong>FirePHP</strong>.</p>
<p>A questo punto per molti nessuna novità&#8230; sono prodotti conosciuti nell&#8217;ambiente di sviluppo e quindi non scendo nel merito del loro funzionamento, poichè esistono molteplici guide.</p>
<p>La cosa interessante è che <strong>FirePHP </strong>è stato integrato in una libreria per <strong>il framework Codeigniter</strong> ed è <a title="Download FirePHP library for Codeigniter" href="http://www.firephp.org/DownloadRelease/FirePHPLibrary-FirePHPCore-0.2.1" target="_blank">scaricabile qui.</a></p>
<p>Per la configurazione nel framework è sufficiente scompattare la classe FirePHP.class.php, rinominarla in firephp.php e copiarla dentro alla nostra applicazione nella cartella delle librerie: system/application/libraries.</p>
<p>Per renderla operativa all&#8217;interno del nostro controller è suffiente</p>
<ul>
<li> Caricare la libreria: <strong>$this-&gt;load-&gt;library(&#8216;firephp&#8217;)</strong></li>
<li>Inviare i log e errori a firebug tramite questa sintassi: <strong>$this-&gt;firephp-&gt;log($myvariable) </strong>o <strong>$this-&gt;firephp-&gt;error(&#8216;Errore alla linea&#8217;)</strong></li>
</ul>
<p>Inoltre è possibile abilitare solamente il debbugger ad esempio quando sviluppiamo offline sul nostro web server in locale:</p>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span>-&gt;<span class="me1">input</span>-&gt;<span class="me1">ip_address</span><span class="br0">&#40;</span><span class="br0">&#41;</span> ==<span class="st0">&#8217;127.0.0.1&#8242;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$this</span>-&gt;<span class="me1">firephp</span>-&gt;<span class="me1">setEnabled</span><span class="br0">&#40;</span><span class="kw2">TRUE</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li2">
<div class="de2"><span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; <span class="re0">$this</span>-&gt;<span class="me1">firephp</span>-&gt;<span class="me1">setEnabled</span><span class="br0">&#40;</span><span class="kw2">FALSE</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
</ol>
</div>
<p><strong>Riferimenti:</strong><br />
<a href="http://getfirebug.com/">http://getfirebug.com/</a><br />
<a href="http://www.firephp.org/">http://www.firephp.org/</a><br />
<a href="http://speedtech.it/2009/05/debugging-a-codeigniter-application-with-firephp/">http://speedtech.it/2009/05/debugging-a-codeigniter-application-with-firephp/</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fcodeigniter-debug-con-firephp.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/codeigniter-debug-con-firephp.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Disponibile IDE NetBeans 6.7, anche per php</title>
		<link>http://www.programmazione-web.com/rilasciato-ide-netbeans-67-per-php.php</link>
		<comments>http://www.programmazione-web.com/rilasciato-ide-netbeans-67-per-php.php#comments</comments>
		<pubDate>Wed, 01 Jul 2009 16:24:27 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Codeigniter]]></category>
		<category><![CDATA[Editor]]></category>
		<category><![CDATA[News dal web]]></category>
		<category><![CDATA[Programmare Php]]></category>
		<category><![CDATA[Sviluppo applicazioni]]></category>
		<category><![CDATA[editor php]]></category>
		<category><![CDATA[ide sviluppo]]></category>
		<category><![CDATA[linguaggio php]]></category>
		<category><![CDATA[software]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=220</guid>
		<description><![CDATA[Dal 29 Giugno è stata rilasciata e resa disponibile per il download la piattaforma IDE NetBeans 6.7, offre una piattaforma di sviluppo per le seguenti tecnologie Java, PHP, Ruby, JavaScript, Groovy and C/C++, e altri.]]></description>
			<content:encoded><![CDATA[<p><strong>Disponibile IDE NetBeans 6.7, anche per php</strong></p>
<p>Dal 29 Giugno è stata rilasciata e resa disponibile per il download la piattaforma IDE NetBeans 6.7, tante sono le novità di questa release.</p>
<p>Ecco a voi alcune anticipazioni:</p>
<ul>
<li> integrazione della piattaforma Kenai</li>
<li>supporto nativo di Maven</li>
<li>supporto migliorato di GlassFish v3, che rappresenta una anteprima della prossima piattaforma JavaEE 6</li>
<li>features on demand, ovvero l’attivazione di alcuni componenti dell’IDE solo quando necessari</li>
</ul>
<p>Ricordando che NetBeans IDE 6.7, costruito dal successo della precendente release 6.5.x, offre una piattaforma di sviluppo per le seguenti tecnologie Java, <strong>PHP</strong>, Ruby, JavaScript, Groovy and C/C++, e  altri.</p>
<p><strong>NetBeans IDE 6.7</strong> è disponibile in Inglese, Portoghese Brasigliano, Giapponese e Cinese semplificato. Ci sono comunque tante comunity che rendono disponibili i pacchetti di traduzione in altre lingue.</p>
<p>Per avere maggiori informazioni su NetBeans IDE 6.7:</p>
<ul>
<li><a href="http://www.netbeans.org/features/index.html" target="_blank">NetBeans IDE 6.7 Features</a></li>
<li><a href="http://www.netbeans.org/kb/index.html" target="_blank">NetBeans IDE 6.7 Tutorials and Documentation</a></li>
<li><a href="http://www.netbeans.org/kb/docs/intro-screencasts.html" target="_blank">Videos of NetBeans IDE 6.7 in Action</a></li>
</ul>
<p>NetBeans è attualmente il mio IDE preferito per lo sviluppo in PHP! Per il download consultate il sito di netbeans.</p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Frilasciato-ide-netbeans-67-per-php.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/rilasciato-ide-netbeans-67-per-php.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rilasciata la nuova versione di PHP 5.3.0</title>
		<link>http://www.programmazione-web.com/rilasciato-php-530.php</link>
		<comments>http://www.programmazione-web.com/rilasciato-php-530.php#comments</comments>
		<pubDate>Wed, 01 Jul 2009 15:00:39 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[News dal web]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[Programmare Php]]></category>
		<category><![CDATA[Sviluppo applicazioni]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[linguaggi web]]></category>
		<category><![CDATA[linguaggio php]]></category>
		<category><![CDATA[namespace php]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[php 5.3.0]]></category>
		<category><![CDATA[static binding php]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=216</guid>
		<description><![CDATA[Il team sviluppo ha annunciato ieri la notizia ufficiale del rilascio dell'ultima versione di PHP della serie 5.x che incude innumerevoli nuove feature e la risuluzione di molti bug del linguaggio, oltre 140 bug fixes.]]></description>
			<content:encoded><![CDATA[<p><strong>Rilasciata la nuova versione di PHP 5.3.0</strong></p>
<p>Il team sviluppo ha annunciato ieri la notizia ufficiale del rilascio dell&#8217;ultima versione di PHP della serie 5.x che incude innumerevoli nuove feature e la risuluzione di molti bug del linguaggio, oltre 140 bug fixes.</p>
<p>Le principali novità introdotte in PHP 5.3.0 sono citate qui di seguito:</p>
<ul>
<li> Supporto per i namespaces;</li>
<li>Funzioni Lambda e Closures;</li>
<li>Miglioramento delle performance;</li>
<li>Garbage collection rivisitato;</li>
<li>Sostituizione di libmysql con mysqlnd;</li>
<li>Miglioramento del porting per le piattaforme alternative;</li>
<li>Cambio politica della gestione degli avvisi (E_DEPRECATED, E_STRICT);</li>
<li>Introdotte nuove direttive nel php.ini che rendono più flessibile la configurazione;</li>
<li>Nuove estensioni native.</li>
</ul>
<p>Vi rimando al <a title="Php 5.3.0 released" href="http://www.php.net/archive/2009.php#id2009-06-30-1" target="_blank">link ufficiale </a>e per ulteriori approfondimenti potete consultare alcuni articoli di html.it che descrivono  con alcuni esempi le nuove funzionalità:</p>
<p><a title="Namespace php 5.3.0" href="http://php.html.it/articoli/leggi/2475/le-novita-di-php-53-namespace/" target="_blank">http://php.html.it/articoli/leggi/2475/le-novita-di-php-53-namespace/</a><br />
<a title="stati binding php 5.3.0" href="http://php.html.it/articoli/leggi/2500/le-novita-di-php-53-supporto-alla-metaprogrammazione/" target="_blank">http://php.html.it/articoli/leggi/2500/le-novita-di-php-53-supporto-alla-metaprogrammazione/</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Frilasciato-php-530.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/rilasciato-php-530.php/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>La domanda ricorrente è come scegliere il CMS giusto?</title>
		<link>http://www.programmazione-web.com/come-scegliere-il-cms-giusto.php</link>
		<comments>http://www.programmazione-web.com/come-scegliere-il-cms-giusto.php#comments</comments>
		<pubDate>Tue, 03 Feb 2009 20:39:49 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[Open-source]]></category>
		<category><![CDATA[cms opensource]]></category>
		<category><![CDATA[content management system]]></category>
		<category><![CDATA[realizzazione siti su cms]]></category>
		<category><![CDATA[scelta cms]]></category>
		<category><![CDATA[sistemi gestione contenuti]]></category>
		<category><![CDATA[sviluppo siti web]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=162</guid>
		<description><![CDATA[Il CMS (Content Managment System) è diventato uno dei più potenti strumenti per lo sviluppo di siti web, soprattutto in un mercato dove i progetti devono essere ideati e costruiti molto rapidamente. Per questo motivo molti web designer e sviluppatori hanno iniziato ad utilizzare i CMS opensource disponibili per velocizzare il proprio lavoro, traendone parecchi benefici.]]></description>
			<content:encoded><![CDATA[<p><strong>Il CMS (Content Managment System)</strong> è diventato uno dei più potenti <strong>strumenti per lo sviluppo di siti web</strong>, soprattutto in un mercato dove i progetti devono essere ideati e costruiti molto rapidamente. Per questo motivo molti web designer e sviluppatori hanno iniziato ad utilizzare i <strong>CMS opensource</strong> disponibili per velocizzare il proprio lavoro, traendone parecchi benefici.</p>
<p>Per fortuna o sfortuna, dipende dai punti di vista, ci sono centinaia e centinaia di CMS (considerando anche quelli proprietari), e trovare quello che fa al caso nostro diventa molto difficile.</p>
<p>In questo articolo non si vuole consigliare sicuramente quale CMS utilizzare ma come valutare la propria scelta in base alle proprie necessità.</p>
<p><strong>Perchè dovrei usare un CMS?</strong></p>
<p>Ci sono tanti possibili motivi per utilizzare un CMS, ma quello principale è che questo strumento ci consente di gestire i contenuti del sito in modo <strong>semplice e veloce</strong>. Spesso gli sviluppatori dimenticano che questo è lo scopo principale di un CMS e cercano comunque di implementare sempre tante funzionalità perdendo di vista questo concetto fondamentale. Il CMS non è solo la gestione del testo, il contenuto può essere un form contatti, un form di autenticazione, un gestore di risorse come files e immagini..ecc La soluzione giusta è quindi trovare uno strumento che renda disponibili le funzionalità essenziali senza sacrificare la facilità di uso di chi lo implementa, ma soprattutto del cliente che poi dovrà gestirlo. <strong>Quindi un buon CMS ci deve consentire di dedicare più tempo alla progettazione ed ideazione del design della parte frontend</strong>, rispetto alla parte di sviluppo di nuovi moduli ed estensioni.</p>
<p><strong>Gli errori più comuni sono:<br />
</strong></p>
<ol>
<li><strong>Scegliere un CMS Geek friendly</strong><br />
Quando si sviluppa un sito bisogna pensare sempre che l&#8217;utilizzatore non sempre avrà la stessa padronanza degli strumenti informatici che abbiano noi. Quindi il CMS che andremo a scegliere deve essere a misura del cliente/utente non a misura di sviluppatore. Poi se troviamo qualcosa che è facile per entrambi tanto meglio.</li>
<li><strong>Più gente lo utilizza e più roba cè meglio è..</strong><br />
Non lasciatevi ingannare da quanti utenti lo usano, dalla immensa comunità di sviluppatori che può darvi supporto, e dalla miriade di estensioni disponibili.. è molto spesso una trappola.<br />
La maggior parte degli utenti e degli sviluppatori improvvisati che usano i CMS non utilizzano questo strumento con vera cognizione e molto spesso anche se sono disponibili tanti moduli e tante estensioni, veramente poche e difficilmente identificabili faranno veramente al caso vostro e tra l&#8217;altro molte di esse saranno scritte male, quindi da rifare.</li>
<li><strong>Scegliere di fretta</strong><br />
Assicurarsi sempre di verificare che il CMS che si stà valutando includa tutte le funzionalità di cui si ha bisogno. Molte spesso si corre il rischio di inciampare su un promettente CMS, investire parecchio tempo per poi accorgersi che non erano state valutate veramente a fondo tutte caratteristiche disponibili. <strong>Purtroppo alcuni dei migliori CMS sono ancora in via di sviluppo, perchè portano l&#8217;esperienza e gli errori degli &#8220;antenati&#8221;</strong>, ma non voglio citarli in questo articolo.</li>
<li><strong>Non documentarsi</strong><br />
Prima di partire ad utilizzare un determinato prodotto è sempre buona regola dare un&#8217;occhiata a dei siti esempio realizzati con lo strumento scelto, leggere la documentazione e le features, contattare gli amministratori e gli sviluppatori che lo utilizzano, discutere dei pro e dei contro del CMS su vari forum. E una volta capito che potrebbe essere il nostro CMS è consigliabile iniziare a sviluppare un sito di esempio per metterlo alla prova e testarne a pieno funzionalità che ci mette a disposizione, e magari perchè non sviluppare direttamente il nostro sito?</li>
</ol>
<p><strong>Riferimenti:</strong><br />
<a title="How to choose the right cms" href="http://www.webdesignerdepot.com/2009/01/how-to-choose-the-right-cms/" target="_blank">http://www.webdesignerdepot.com/2009/01/how-to-choose-the-right-cms/</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fcome-scegliere-il-cms-giusto.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/come-scegliere-il-cms-giusto.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Google sitemap generator, un nuovo tool di generazione sitemap</title>
		<link>http://www.programmazione-web.com/google-sitemap-generator-un-nuovo-tool-di-generazione-sitemap.php</link>
		<comments>http://www.programmazione-web.com/google-sitemap-generator-un-nuovo-tool-di-generazione-sitemap.php#comments</comments>
		<pubDate>Tue, 13 Jan 2009 12:55:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[google sitemap]]></category>
		<category><![CDATA[sitemap generator]]></category>
		<category><![CDATA[sitemap.xml]]></category>
		<category><![CDATA[tool sitemap]]></category>
		<category><![CDATA[xml sitemap]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=144</guid>
		<description><![CDATA[Il  Google Sitemap Generator è un software opensouce che trova i nuovi url o quelli che vengono modificati basandosi diversi metodi: sul traffico generato dalle url, analizzando i log del server e la scansione dei files che sono sul server. Combinando questi metodi Google Sitemap Generator può identificare molto velocemente i vari url e calcolare i metadata, rendendo la vostra sitemap efficiente.]]></description>
			<content:encoded><![CDATA[<p>Sono passati 3 anni da quanto è stato annunciato il rilascio in giugno 2005 del <a title="Python Sitemap generator" href="http://code.google.com/p/sitemap-generators/downloads/list" target="_blank">Python Sitemap generator</a> .<br />
In quel periodo molte persone hanno creato i propri <a title="third party Sitemap generators" href="http://code.google.com/p/sitemap-generators/wiki/SitemapGenerators" target="_blank">Sitemap generators</a> per aiutare i webmaster a creare il loro file xml per la sitemap .</p>
<p>Mentre la maggior parte dei <strong>Sitemap generator</strong> facevano la scansione dei link dei siti web o della lista dei file su un server, <strong>Google </strong>ha pensato di creare un altro tipo di Sitemap generator che utilizza diversi metodi per trovare gli URL del sito web per poi permettere di creare e mantenere automaticamente diversi tipi di file Sitemap.</p>
<p>Il  <a title="Google Sitemap Generator" href="http://code.google.com/p/googlesitemapgenerator/" target="_blank">Google Sitemap Generator</a> è un software opensource che trova i nuovi url o quelli che vengono modificati basandosi diversi metodi: sul traffico generato dalle url, analizzando i log del server e la scansione dei files che sono sul server. Combinando questi metodi <strong>Google Sitemap Generator</strong> può identificare molto velocemente i vari link url e calcolare i vari metadata, rendendo la vostra sitemap super efficiente.</p>
<p>Una volta che il tool ha identificato i vari url, si può scegliere quali tipologie di sitemap creare:</p>
<ul>
<li><a title="XML Sitemaps" href="http://www.google.com/support/webmasters/bin/answer.py?answer=40318" target="_blank">XML Sitemaps</a> per le ricerche web in accordo con gli standard definiti su <a title="sitemaps.org" href="http://www.sitemaps.org/" target="_blank">sitemaps.org.</a></li>
<li><a title="Mobile Sitemaps" href="http://www.google.com/support/webmasters/bin/answer.py?answer=34627" target="_blank">Mobile Sitemaps</a> ottimizzata per i dispositivi mobile.</li>
<li><a title="Code Search Sitemaps" href="http://www.google.com/support/webmasters/bin/answer.py?answer=75224" target="_blank">Code Search Sitemap.</a></li>
</ul>
<p>In più <strong>Google Sitemap Generator</strong> può effettuare un <a title="ping to Google Blog Search" href="http://www.google.com/help/blogsearch/about_pinging.html" target="_blank">ping a Google Blog Search</a> per comunicare tutte le modifiche. Si può anche includere (opzionale) le URL della sitemap nel file robots.txt o pingare un altro motore di ricerca che supporta gli standard di <a title="sitemaps.org" href="http://www.sitemaps.org/" target="_blank">sitemaps.org.</a></p>
<p>L&#8217;invio delle URL è molto semplice grazie ad una console di amministrazione web based, che vi consente di aver accesso a diverse funzionalità.</p>
<p><strong>Riferimenti:<br />
</strong><a title="google sitemap generator" href="http://code.google.com/p/googlesitemapgenerator/" target="_blank">http://code.google.com/p/googlesitemapgenerator/</a><strong></strong></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fgoogle-sitemap-generator-un-nuovo-tool-di-generazione-sitemap.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/google-sitemap-generator-un-nuovo-tool-di-generazione-sitemap.php/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Progettiamo il software o programmiamo e basta?</title>
		<link>http://www.programmazione-web.com/progettare-software-o-programmare-progettando.php</link>
		<comments>http://www.programmazione-web.com/progettare-software-o-programmare-progettando.php#comments</comments>
		<pubDate>Tue, 05 Aug 2008 20:52:42 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Design pattern]]></category>
		<category><![CDATA[RAD]]></category>
		<category><![CDATA[Sviluppo applicazioni]]></category>
		<category><![CDATA[ciclo di vita del software]]></category>
		<category><![CDATA[linguaggi di modellazione]]></category>
		<category><![CDATA[progettare applicazioni]]></category>
		<category><![CDATA[progettare software]]></category>
		<category><![CDATA[programmazione e sviluppo]]></category>
		<category><![CDATA[sviluppo software]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=69</guid>
		<description><![CDATA[Spesso noi programmatori siamo costretti a lavorare in condizioni esasperate da tempistiche troppo stringenti, richieste e specifiche date all'ultimo minuto e margini di brainstorming ridicoli. Un software ben progettato e' piu' stabile e architetturalmente espandibile, mantenibile e il costo finale sara' inferiore.. quindi perche' non vogliamo attenerci a queste semplice regole?]]></description>
			<content:encoded><![CDATA[<p>Spesso noi programmatori siamo costretti a lavorare in condizioni esasperate da tempistiche troppo stringenti, richieste e specifiche date all&#8217;ultimo minuto e margini di brainstorming ridicoli.</p>
<p>Questo e&#8217; quello che succede in molte aziende dove spesso i project manager (cosi&#8217; amano definirsi), che in alcuni casi non hanno neanche mai seriamente progettato e sviluppato applicazioni, pretendono di vedere i risultati in tempi molto brevi.. magari preferiscono vedere la bozza del software semi funzionante, anche se concepita male, piuttosto che dare agli analisti/sviluppatori tempi adeguati di progettazione e analisi che migliorerebbero inevitabilmente la qualita&#8217; e la stabilita&#8217; finale dei software prodotti.</p>
<p>E&#8217; chiaro a tutti noi che se vengono fornite specifiche complete e precise, e c&#8217;e&#8217; il tempo di progettare l&#8217;intero <a title="Ciclo di vita del software" href="http://it.wikipedia.org/wiki/Ciclo_di_vita_del_software" target="_blank">ciclo di vita del software</a>, utilizzando pattern validi e magari linguaggi di modellazione, lo sviluppo e la manutenzione del codice sarebbe molto piu&#8217; semplice.  Anche uno sviluppatore meno esperto, con queste premesse, riuscirebbe a cimentarsi senza particolari problemi; ma purtroppo non e&#8217; sempre cosi&#8217; e si preferisce programmare e basta, progettare mentre si programma ed inevitabilmente nascono software che non stanno in piedi.</p>
<p>Sara&#8217; la senzazione di risparmio? Sara&#8217; che meglio un uovo oggi che una gallina domani? mah..</p>
<p>Progettare software e&#8217; un investimento, se si vuole fare le cose di fretta e senza riflettere si finisce per buttare via soldi e tempo, oltre a creare un prodotto di scarsa qualita&#8217;; poi noi ci troveremo a mettere continuamente mano a progetti pieni di toppe e ripieghi che per sistemare un bug impieghiamo giornate di lavoro!</p>
<p>Un software ben progettato e&#8217; piu&#8217; stabile e architetturalmente espandibile, mantenibile e il costo finale sara&#8217; inferiore.. quindi perche&#8217; non vogliamo attenerci a queste semplice regole?</p>
<p><!-- message --></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fprogettare-software-o-programmare-progettando.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/progettare-software-o-programmare-progettando.php/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Codeigniter Redux Authentication: libreria per l&#8217;autenticazione</title>
		<link>http://www.programmazione-web.com/codeigniter-redux-authentication-libreria-per-lautenticazione.php</link>
		<comments>http://www.programmazione-web.com/codeigniter-redux-authentication-libreria-per-lautenticazione.php#comments</comments>
		<pubDate>Sat, 05 Jul 2008 14:24:06 +0000</pubDate>
		<dc:creator>neryo</dc:creator>
				<category><![CDATA[Applicazioni]]></category>
		<category><![CDATA[Classi e librerie]]></category>
		<category><![CDATA[Codeigniter]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[Programmare Php]]></category>
		<category><![CDATA[RAD]]></category>
		<category><![CDATA[Sviluppo applicazioni]]></category>
		<category><![CDATA[autenticazione utenti]]></category>
		<category><![CDATA[libreria autenticazione]]></category>
		<category><![CDATA[libreria autenticazione redux]]></category>
		<category><![CDATA[libreria codeigniter]]></category>
		<category><![CDATA[redux autenticazione utenti]]></category>
		<category><![CDATA[Redux Authentication library]]></category>
		<category><![CDATA[user managment]]></category>

		<guid isPermaLink="false">http://www.programmazione-web.com/?p=60</guid>
		<description><![CDATA[Redux Authtentication library, libreria per il framework codeigniter, che implementa l'autenticazione in modo veloce e in piena sicurezza]]></description>
			<content:encoded><![CDATA[<p><strong>Codeigniter Redux Authentication: libreria per l&#8217;autenticazione</strong><br />
In questo caldissimo mese di luglio vi voglio presentare Redux Authtentication library, un pacchetto per l&#8217;autenticazione da utilizzare con il &#8220;nostro&#8221; amato framework php Codeigniter. Questa libreria ci consente di creare in modo facile e super veloce l&#8217;accesso protetto al backend dei nostri progetti e di avere una base solida su cui costruire e personalizzare la sicurezza della nostra applicazione web.</p>
<h3>Le features di questa libreria sono:</h3>
<ul>
<li>Registrazione degli utenti</li>
<li>Login e logout</li>
<li>Gestione perdita password</li>
<li>Gestione gruppi utenti</li>
<li>Sistema di Ban degli utenti</li>
<li>Focalizzata sulla sicurezza</li>
</ul>
<p>Come accennato, l&#8217;installazione di questa libreria per Codeigniter è molto semplice e viene fatta seguendo questi pochi step:</p>
<ul>
<li>Creare il database della nostra applicazione codeigniter oppure utilizzare il database esistente (se il progetto è già iniziato), ed importare il file<strong> install.sql </strong>(contenuto nel pacchetto) nel nostro database, contenente le tabelle per Redux.</li>
<li>All&#8217;interno del pacchetto della libreria Redux Authentication troveremo la cartella application in cui sono contenute altre due cartelle config/ e libraries/ in cui all&#8217;interno ci sono rispettivamente il file per la configurazione della libreria e in libraries il file contenente la classe con i metodi Redux. Chiaramente questo contenuto dovrà essere copiato nella nostra cartella application della nostra applicazione nelle rispettive cartelle.</li>
<li>Un volta fatto questo andremo nel file <strong>config/config.php</strong> e abiliteremo le variabili di sessione:
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re0">$config</span><span class="br0">&#91;</span><span class="st0">&#8216;sess_encrypt_cookie&#8217;</span><span class="br0">&#93;</span> &nbsp;= <span class="kw2">TRUE</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$config</span><span class="br0">&#91;</span><span class="st0">&#8216;sess_use_database&#8217;</span><span class="br0">&#93;</span> &nbsp; &nbsp;= <span class="kw2">TRUE</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$config</span><span class="br0">&#91;</span><span class="st0">&#8216;sess_match_ip&#8217;</span><span class="br0">&#93;</span> &nbsp; &nbsp; &nbsp; &nbsp;= <span class="kw2">TRUE</span>;</div>
</li>
<li class="li1">
<div class="de1"><span class="re0">$config</span><span class="br0">&#91;</span><span class="st0">&#8216;sess_match_useragent&#8217;</span><span class="br0">&#93;</span> = <span class="kw2">TRUE</span>;</div>
</li>
</ol>
</div>
<p>Nel mio caso per la configurazione delle sessioni su DB Mysql ho seguito questa guida <a title="Codeigniter DB Session" href="http://codeigniter.com/wiki/DB_Session/" target="_blank">http://codeigniter.com/wiki/DB_Session/</a></li>
<li>Sistemate le sessioni possiamo configurare a dovere il file <strong>config/redux_auth.php</strong>, in cui non mi addentro perchè è abbastanza semplice e ben commentato, poi non mi pare abbia bisogno di particolari modifiche.</li>
<li>Per comodità, sarebbe opportuno configurare in <strong>config/autoload.php</strong> il caricamento automatico della libreria redux, perchè altrimenti bisogna ricordarsi di farlo ogni volta che la si utilizza nei metodi del controller. Ricordandoci che Redux carica in automatico le librerie per le email e le sessioni.
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="re0">$autoload</span><span class="br0">&#91;</span><span class="st0">&#8216;libraries&#8217;</span><span class="br0">&#93;</span> = <a href="http://www.php.net/array"><span class="kw3">array</span></a><span class="br0">&#40;</span><span class="st0">&quot;redux_auth&quot;</span><span class="br0">&#41;</span>;</div>
</li>
</ol>
</div>
</li>
</ul>
<p>Dopo questa breve configurazione sarà possibile sfruttare tutta la potenza della libreria Redux Authentication, all&#8217;interno del pacchetto nei files di esempio avremo il controller <strong>user.php</strong> che illustra molto bene come vengono implementate le funzioni di base per costruire una autenticazione completa e anche come si apprestano facilmente alla personalizzazione.</p>
<h3>Per farvi un esempio di semplice controller con il solo login:</h3>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">class</span> user <span class="kw2">extends</span> Controller</div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw2">function</span> index <span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <a href="http://www.php.net/echo"><span class="kw3">echo</span></a> <span class="st0">&#8216;This is the user Controller&#8217;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="kw2">function</span> login <span class="br0">&#40;</span><span class="br0">&#41;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$rules</span><span class="br0">&#91;</span><span class="st0">&#8216;email&#8217;</span><span class="br0">&#93;</span> &nbsp; &nbsp;= <span class="st0">&#8216;trim|required&#8217;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$rules</span><span class="br0">&#91;</span><span class="st0">&#8216;password&#8217;</span><span class="br0">&#93;</span> = <span class="st0">&#8216;trim|required&#8217;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$this</span>-&gt;<span class="me1">validation</span>-&gt;<span class="me1">set_rules</span><span class="br0">&#40;</span><span class="re0">$rules</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span>-&gt;<span class="me1">validation</span>-&gt;<span class="me1">run</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$login</span> = <span class="re0">$this</span>-&gt;<span class="me1">redux_auth</span>-&gt;<span class="me1">login</span><span class="br0">&#40;</span><span class="re0">$this</span>-&gt;<span class="me1">input</span>-&gt;<span class="me1">post</span><span class="br0">&#40;</span><span class="st0">&#8216;email&#8217;</span><span class="br0">&#41;</span>, <span class="re0">$this</span>-&gt;<span class="me1">input</span>-&gt;<span class="me1">post</span><span class="br0">&#40;</span><span class="st0">&#8216;password&#8217;</span><span class="br0">&#41;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$i</span> = <span class="br0">&#40;</span><span class="re0">$login</span><span class="br0">&#41;</span> ? redirect<span class="br0">&#40;</span><span class="st0">&#8221;</span><span class="br0">&#41;</span> : <span class="st0">&#8216;false&#8217;</span>;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">else</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="re0">$this</span>-&gt;<span class="me1">load</span>-&gt;<span class="me1">view</span><span class="br0">&#40;</span><span class="st0">&#8216;login&#8217;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1"><span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>Chiaramente se utilizziamo il controller già fatto dovremmo creare poi tutte le viste che vengono richiamate da esso. Per chi è inesperto e vuole comunque facilitarsi la vita all&#8217;inizio gli consiglio di scaricarle dal secondo link nei riferimenti qui sotto.</p>
<h3>Un esempio di come effettuare il controllo nelle pagine protette lato backend:</h3>
<div class="dean_ch" style="white-space: wrap;">
<ol>
<li class="li1">
<div class="de1"><span class="kw2">class</span> Admin <span class="kw2">extends</span> Controller <span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> Admin<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; parent::<span class="me2">Controller</span><span class="br0">&#40;</span><span class="br0">&#41;</span>;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="kw2">function</span> index<span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="kw1">if</span><span class="br0">&#40;</span><span class="re0">$this</span>-&gt;<span class="me1">redux_auth</span>-&gt;<span class="me1">logged_in</span><span class="br0">&#40;</span><span class="br0">&#41;</span><span class="br0">&#41;</span><span class="br0">&#123;</span></div>
</li>
<li class="li2">
<div class="de2">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>&#8230;<span class="br0">&#93;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span><span class="kw1">else</span><span class="br0">&#123;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li2">
<div class="de2">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#91;</span>&#8230;<span class="br0">&#93;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp;</div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
<li class="li1">
<div class="de1">&nbsp; &nbsp; &nbsp; &nbsp; <span class="br0">&#125;</span></div>
</li>
</ol>
</div>
<p>E&#8217; tutto.. quindi buona autenticazione con Redux!</p>
<p><strong>Riferimenti</strong>:</p>
<p><a title="Redux Authentication library" href="http://code.google.com/p/reduxauth/" target="_blank">http://code.google.com/p/reduxauth/</a><br />
<a title="Redux Authentication Example “View” Files  " href="http://codeigniter.com/forums/viewthread/72525/" target="_blank">http://codeigniter.com/forums/viewthread/72525/</a><br />
<a title="Codeigniter DB Session" href="http://codeigniter.com/wiki/DB_Session/" target="_blank">http://codeigniter.com/wiki/DB_Session/</a><br />
<a title="Codeigniter Sessions" href="http://codeigniter.com/user_guide/libraries/sessions.html" target="_blank">http://codeigniter.com/user_guide/libraries/sessions.html</a></p>
<iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.programmazione-web.com%2Fcodeigniter-redux-authentication-libreria-per-lautenticazione.php&amp;layout=standard&amp;show_faces=true&amp;width=450&amp;action=like&amp;colorscheme=light&amp;height=80" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:450px; height:80px;" allowTransparency="true"></iframe>]]></content:encoded>
			<wfw:commentRss>http://www.programmazione-web.com/codeigniter-redux-authentication-libreria-per-lautenticazione.php/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
	</channel>
</rss>

