<?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>nerthase 2.0 &#187; HTML &amp; CSS</title>
	<atom:link href="http://www.nerthase.com/blog/category/guide/html-css/feed" rel="self" type="application/rss+xml" />
	<link>http://www.nerthase.com/blog</link>
	<description>Progettazione... Programmazione... Soluzione...</description>
	<lastBuildDate>Wed, 29 Jun 2011 07:11:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>[Java] Invio di File ad una Servlet</title>
		<link>http://www.nerthase.com/blog/java-invio-di-file-ad-una-servlet?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=java-invio-di-file-ad-una-servlet</link>
		<comments>http://www.nerthase.com/blog/java-invio-di-file-ad-una-servlet#comments</comments>
		<pubDate>Fri, 04 Jun 2010 17:37:06 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[JavaDoc]]></category>
		<category><![CDATA[JSP]]></category>
		<category><![CDATA[MultipartRequest]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[POST]]></category>
		<category><![CDATA[Servlet]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=827</guid>
		<description><![CDATA[In Java le Servlet sono il primo strumento con il quale si viene a contatto, se si vuole realizzare una applicazione Web dinamica che interagisca con l&#8217;utente. Come sicuramente saprete, le Servlet sono in grado di ricevere le richieste HTTP GET o POST, e di restituire un risultato, che puÃ² anche dipendere dai parametri passati&#8230;]]></description>
			<content:encoded><![CDATA[<p>In Java le Servlet sono il primo strumento con il quale si viene a contatto, se si vuole realizzare una <strong>applicazione Web dinamica</strong> che interagisca con l&#8217;utente. Come sicuramente saprete, le Servlet sono in grado di ricevere le <em>richieste HTTP GET o POST</em>, e di restituire un risultato, che puÃ² anche dipendere dai parametri passati tramite la richiesta. Questa semplice caratteristica, Ã¨ realizzabile grazie all&#8217;implementazione dei metodi <em>doGet(&#8230;, &#8230;)</em> e <em>doPost(&#8230;, &#8230;)</em> che la classe <em>javax.servlet.http.HttpServlet</em> mette a disposizione.</p>
<p>L&#8217;unico vero problema che ho riscontrato fin&#8217;ora con l&#8217;utilizzo di questa classe, Ã¨ la limitazione da essa imposta riguardo il tipo di dati che Ã¨ in grado di prelevare dalle richieste GET e POST che riceve. Infatti, con i due metodi sopracitati, Ã¨ possibile solo elaborare richieste che contengono campi testuali che non fanno riferimento a codifiche particolari. Un classico esempio di questa limitazione, Ã¨ l&#8217;<strong>impossibilitÃ  di inviare tramite GET o POST una immagine alla Servlet.</strong></p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>Java non offre nativamente altri strumenti per la gestione di contenuti di diverso tipo, quindi bisogna ricorrere ad una libreria esterna. Una libreria molto semplice ed intuitiva Ã¨ messa a disposizione da <a title="Servlets.com" href="http://www.servlets.com/" target="_blank">Servlets.com</a> ed Ã¨ reperibile a <a title="http://www.servlets.com/cos/" href="http://www.servlets.com/cos/" target="_blank">questo indirizzo</a>. La libreria in questione Ã¨ <strong>com.oreilly.servlet</strong>, ed in particolare la classe che ci serve per raggiungere il nostro scopo, Ã¨ la classe <strong>MultipartRequest</strong>. Vediamo di seguito un semplice esempio di utilizzo di quanto detto.</p>
<h4>HTML &#8211; PHP &#8211; JSP</h4>
<p>Questa porzione di codice, Ã¨ quella che implementa il form per la scelta del file da inviare alla servlet. PuÃ² essere implementato in qualsivoglia linguaggio Web, ma per semplicitÃ  assumiamo di volerlo implementare in html.</p>
<div class="codecolorer-container html4strict mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">form</span> <span style="color: #000066;">action</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;ServletDestinazione&quot;</span> <span style="color: #000066;">method</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;post&quot;</span> <span style="color: #000066;">enctype</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;multipart/form-data&quot;</span> &gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;file&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;file&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">form</span>&gt;</span></div></td></tr></tbody></table></div>
<p>Alcuni commenti riguardo il codice di cui sopra:</p>
<ul>
<li>Il form utilizza il metodo <em>HTTP POST</em> per l&#8217;invio dei dati</li>
<li><em>ServletDestinazione</em> Ã¨ la Servlet che implementa il metodo <em>doPost(&#8230;, &#8230;)</em> per la ricezione dei dati</li>
<li><em>multipart/form-data</em> Ã¨ la codifica dei dati inviati alla Servlet</li>
</ul>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<h4>Java &#8211; Servlet</h4>
<p>Ed ora vediamo come nella Servlet possiamo recuperare i dati della richiesta.</p>
<div class="codecolorer-container java mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.File</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.servlet.ServletException</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.servlet.http.HttpServlet</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.servlet.http.HttpServletRequest</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">javax.servlet.http.HttpServletResponse</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">com.oreilly.servlet.MultipartRequest</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> ServletDestinazione <span style="color: #000000; font-weight: bold;">extends</span> HttpServlet <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">protected</span> <span style="color: #000066; font-weight: bold;">void</span> doPost<span style="color: #009900;">&#40;</span>HttpServletRequest request, HttpServletResponse response<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> ServletException, <span style="color: #003399;">IOException</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> temp_dir <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;.&quot;</span><span style="color: #339933;">;</span>&nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Directory temporanea per il salvataggio del file</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> temp_size <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;65536&quot;</span><span style="color: #339933;">;</span>&nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Dimensione massima del file</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; MultipartRequest mr <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> MultipartRequest<span style="color: #009900;">&#40;</span>request, temp_dir, temp_size<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">File</span> f <span style="color: #339933;">=</span> mr.<span style="color: #006633;">getFile</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;file&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// recupero l'oggetto passato nel campo &quot;file&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Gestione libera del File f</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; ...<br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Dal codice di sopra, possiamo notare il semplice utilizzo della classe <em>MultipartRequest</em> e soprattutto delle poche componenti di essa utilizzate. Dai commenti e dai <a title="JavaDoc" href="http://www.servlets.com/cos/javadoc/index.html?com/oreilly/servlet/package-summary.html" target="_blank">JavaDoc</a> della classe, credo sia abbastanza comprensibile la scelta del costruttore utilizzato, e l&#8217;utilizzo del metodo <em>getFile(&#8230;)</em> per creare un oggetto File utilizzando l&#8217;attributo <em>file</em> della richiesta POST. Questo oggetto File sarÃ  poi completamente manipolabile dalla Servlet senza alcun vincolo riguardo la sua provenienza.</p>
<p><span style="color: #ffffff;">. . .</span><br />
<strong> Link utili</strong></p>
<p><a title="Libreria com.oreilly.servlet" href="http://www.servlets.com/cos/" target="_blank">Libreria com.oreilly.servlet</a></p>
<p><a title="JavaDoc - com.oreilly.servlet" href="http://www.servlets.com/cos/javadoc/index.html?com/oreilly/servlet/package-summary.html">JavaDocÂ completo della libreria COS</a></p>
<p><a title="JavaDoc della classe MultipartRequest" href="http://www.servlets.com/cos/javadoc/com/oreilly/servlet/MultipartRequest.html" target="_blank">JavaDoc della classe MultipartRequest</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/java-invio-di-file-ad-una-servlet/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live HTTP Headers: sniffare ed analizzare il traffico HTTP</title>
		<link>http://www.nerthase.com/blog/live-http-headers-sniffare-ed-analizzare-il-traffico-http?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=live-http-headers-sniffare-ed-analizzare-il-traffico-http</link>
		<comments>http://www.nerthase.com/blog/live-http-headers-sniffare-ed-analizzare-il-traffico-http#comments</comments>
		<pubDate>Sat, 15 May 2010 13:16:40 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Mondo Web]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[facebook]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[GET]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[Live HTTP Headers]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[POST]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=781</guid>
		<description><![CDATA[In un precedente articolo vi ho parlato di come sia possibile effettuare una richiesta POST verso un sito Web utilizzando Java, con il meccanismo dei Socket. Il metodo che vi avevo illustrato si basava principalmente sull&#8217;analisi del form presente nella pagina Web che normalmente si occupa dell&#8217;invio dei dati. Quindi successivamente in Java, si inviavano&#8230;]]></description>
			<content:encoded><![CDATA[<p>In un <a title="Effettuare una richiesta HTTP con Java Socket" href="http://www.nerthase.com/blog/java-http-post-con-socket" target="_blank">precedente articolo</a> vi ho parlato di come sia possibile <a title="Effettuare una richiesta HTTP POST con Java Socket" href="http://www.nerthase.com/blog/java-http-post-con-socket" target="_blank">effettuare una richiesta POST verso un sito Web utilizzando Java, con il meccanismo dei Socket</a>. Il metodo che vi avevo illustrato si basava principalmente sull&#8217;analisi del <strong>form</strong> presente nella pagina Web che normalmente si occupa dell&#8217;invio dei dati. Quindi successivamente in Java, si inviavano i dati al Server Web sostituendosi al Browser ed inviando gli stessi dati che il form avrebbe inviato.</p>
<p>Il problema, o la limitazione principale di questa tecnica, Ã¨ che non tiene conto di altri eventuali dati che il Browser potrebbe inviare al Server Web. Ad esempio, il Browser quando invia qualsiasi richiesta <strong>GET</strong> o <strong>POST</strong> invia anche un identificativo di esso, tramite il parametro <strong>User-Agent</strong>. Il Server Web che riceve una richiesta GET o POST, potrebbe analizzare i dati che riceve, e non accettare tutte le richieste dove questo parametro non Ã¨ impostato. Da notare che questo parametro non compare assolutamente nel codice HTTP della pagina.</p>
<p>Il parametro User-Agent non Ã¨ l&#8217;unico utilizzato dai Server Web per scartare richieste non provenienti da Browser comuni. Esistono molti altri parametri, che possono essere utilizzati a tale scopo. In questo articolo, utilizziamo <strong>Live HTTP Headers</strong> per <em>sniffare</em> tutto il traffico HTTP da e verso il Server Web, per capire quindi come configurare nel migliore dei modi il programma Java visto nelÂ <a title="Effettuare una richiesta HTTP con Java Socket" href="http://www.nerthase.com/blog/java-http-post-con-socket" target="_blank">precedente articolo</a>.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p><a title="Live HTTP Headers" href="https://addons.mozilla.org/it/firefox/addon/3829/" target="_blank">Live HTTP Headers</a> Ã¨ un <strong>plug-in per Firefox</strong> che permette di <em>monitorare tutte le richieste che il Browser fa al Server Web, e tutte le risposte inviate da esso</em>. In questo modo, Ã¨ possibile visualizzare esattamente una <strong>richiesta POST</strong> inviata verso il Server, e quindi <strong>riprodurla fedelmente in Java</strong>. Nel seguito, vediamo come ci si dovrebbe comportare nel caso in cui si volesse riprodurre in Java un meccanismo di login presso un Sito Web, simile, ma piÃ¹ potente, a quello visto nel <a title="Effettuare una richiesta HTTP con Java Socket" href="http://www.nerthase.com/blog/java-http-post-con-socket" target="_blank">precedente articolo</a>.</p>
<h4>Login su Facebook</h4>
<p>Per realizzare questo esempio ho preso come cavia il sito Web piÃ¹ conosciuto al mondo, <a title="Facebook" href="http://www.facebook.com/" target="_blank">Facebook</a>. Il meccanismo di login di Facebook Ã¨ molto semplice, e del tutto analogo a molti altri metodi utilizzati dalla maggior parte dei siti web.</p>
<p><a class="lightbox" title="Facebook Login" href="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Facebook-Login.png"><img class="aligncenter size-full wp-image-782" title="Facebook Login" src="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Facebook-Login.png" alt="" width="414" height="66" /></a></p>
<p>Come prima analisi del sito, si puÃ² visualizzare il codice HTML ed individuare il <strong>form che effettua il login</strong>. Questo passaggio sarÃ  successivamente reso superfluo dall&#8217;uso di Live HTTP Headers, perÃ² Ã¨ comunque interessante capire come realizzano alcune tecniche. Di seguito, potete vedere la porzione di codice HTML dove viene costruito il form dell&#8217;immagine precedente.</p>
<div class="codecolorer-container html4strict mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">form</span> <span style="color: #000066;">method</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;POST&quot;</span> <span style="color: #000066;">action</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;https://login.facebook.com/login.php?login_attempt=1&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login_form&quot;</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;hidden&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;charset_test&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&amp;euro;,´,â‚¬,Â´,æ°´,Ð”,Ð„&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;hidden&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;locale&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;locale&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;it_IT&quot;</span> autocomplete<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;off&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">table</span> <span style="color: #000066;">cellpadding</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;0&quot;</span> <span style="color: #000066;">cellspacing</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;0&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">tr</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login_form_label_field login_form_label_remember&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;checkbox&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;inputcheckbox&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;1&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;persistent&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;persistent&quot;</span> <span style="color: #000066;">tabindex</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;3&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">label</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;label_persistent&quot;</span> <span style="color: #000066;">for</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;persistent&quot;</span>&gt;</span>Resta collegato<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">label</span>&gt;</span> &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login_form_label_field&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">a</span> <span style="color: #000066;">href</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://www.facebook.com/reset.php&quot;</span> <span style="color: #000066;">rel</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nofollow&quot;</span>&gt;</span>Hai dimenticato la password?<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">a</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login_form_last_field login_form_label_field&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">tr</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">tr</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;inputtext &nbsp;DOMControl_placeholder&quot;</span> <span style="color: #000066;">title</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;E-mail&quot;</span> placeholder<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;E-mail&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;email&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;email&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;E-mail&quot;</span> <span style="color: #000066;">tabindex</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;1&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;password&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;inputpassword&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pass&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pass&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000066;">tabindex</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;2&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;inputtext hidden_elem DOMControl_placeholder&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pass_placeholder&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pass_placeholder&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&quot;</span> <span style="color: #000066;">tabindex</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;2&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">td</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login_form_last_field&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;inner&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">label</span> <span style="color: #000066;">class</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;uiButton uiButtonConfirm uiButtonMedium&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Accedi&quot;</span> <span style="color: #000066;">tabindex</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;4&quot;</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">label</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">td</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">tr</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">table</span>&gt;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;hidden&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;charset_test&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;&amp;euro;,´,â‚¬,Â´,æ°´,Ð”,Ð„&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;hidden&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;lsd&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;lsd&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;VwSKT&quot;</span> autocomplete<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;off&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">form</span>&gt;</span></div></td></tr></tbody></table></div>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>Una volta fatta una prima analisi della pagina Web, e di come il form invia i dati al Server, vediamo di iniziare ad imparare ad usare Live HTTP Header. Innanzitutto, bisogna scaricare ed installare il plug-in per Firefox, da link apposito: <a title="Live HTTP Headers" href="https://addons.mozilla.org/it/firefox/addon/3829/" target="_blank">Live HTTP Headers Download</a>. Una volta installato, il plug-in sarÃ  disponibile dal <strong>meÃ¹ Strumenti</strong>.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Live Http Headers 1" href="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-1.png"><img class="aligncenter size-full wp-image-783" title="Live Http Headers 1" src="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-1.png" alt="" width="625" height="472" /></a></p>
<p>Una nota molto importante, Ã¨ che una volta avviato il plug-in, questo visualizzerÃ  tutte le richieste HTTP che al momento Firefox sta effettuando. Quindi abbiate l&#8217;accortezza di posizionarvi sulla pagina che volete monitorare, farla caricare completamente, e solo dopo avviare il plug-in. Infatti, come potete vedere dall&#8217;immagine seguente, il plug-in Ã¨ avviato, ma non sta ancora intercettando nulla.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Live Http Headers 2" href="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-2.png"><img class="aligncenter size-large wp-image-784" title="Live Http Headers 2" src="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-2-1024x491.png" alt="" width="717" height="344" /></a></p>
<p>Una volta avviato il plug-in, potete inserire i vostri dati all&#8217;interno del form, e successivamente effettuare il login, come fate di solito.Â Adesso, potete vedere Live HTTP Headers popolarsi di numerose linee di codice, che rappresentano semplicemente le richieste e le risposte che il Browser fa e riceve dal Server Web. Per individuare quale Ã¨ la richiesta contenente i dati del form, che quindi vi permette di effettuare il login, dovete semplicemente ricercare la prima richiesta POST che Ã¨ stata effettuata.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Live Http Headers 4" href="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-4.png"><img class="aligncenter size-full wp-image-785" title="Live Http Headers 4" src="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-4.png" alt="" width="664" height="464" /></a></p>
<p>Come potete vedere dall&#8217;immagine precedente, la richiesta POST Ã¨ molto piÃ¹ complessa di quella vista e realizzata in Java nel <a title="Effettuare una richiesta HTTP con Java Socket" href="http://www.nerthase.com/blog/java-http-post-con-socket" target="_blank">precedente articolo</a>. In questa richiesta infatti, sono presenti <em>molti campi impostati dal Browser</em> e non dal form HTML, che quindi solo in questo modo potete visualizzare. L&#8217;ultima riga della richiesta POST, sono invece i dati inviati tramite il form HTML al Server Web, che dipendono esclusivamente ed interamente da come il form Ã¨ stato implementato.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Live Http Headers 5" href="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-5.png"><img class="aligncenter size-large wp-image-786" title="Live Http Headers 5" src="http://www.nerthase.com/blog/wp-content/uploads/2010/05/Live-Http-Headers-5-1024x526.png" alt="" width="717" height="368" /></a></p>
<p>In quest&#8217;altra immagine, ci tengo a farvi vedere che nonostante la vostra password non sia visibile nella casella di testo relativa ad essa e nemmeno nell&#8217;URL della pagina, viene comunque inviata al Server Web in chiaro. Quindi semplicemente <em>sniffando</em> le richieste HTTP di un Browser, sarÃ  possibile visualizzare tutte le informazioni trasmesse, soprattutto le password.</p>
<p>Di seguito trovate il codice della richiesta POST per intero, che potete usare per semplice curiositÃ , o per provare ad implementare una richiesta POST in Java leggermente piÃ¹ completa.</p>
<div class="codecolorer-container text mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">POST /login.php?login_attempt=1 HTTP/1.1<br />
Host: login.facebook.com<br />
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; it; rv:1.9.2) Gecko/20100115 Firefox/3.6<br />
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8<br />
Accept-Language: it-it,it;q=0.8,en-us;q=0.5,en;q=0.3<br />
Accept-Encoding: gzip,deflate<br />
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7<br />
Keep-Alive: 115<br />
Connection: keep-alive<br />
Referer: http://www.facebook.com/<br />
Cookie: datr=1273922752-7f53f02bbc25f61b71562a08d1db5c02169342202a5a2c11c0482; lsd=VwSKT; reg_fb_gate=http%3A%2F%2Fwww.facebook.com%2F; reg_fb_ref=http%3A%2F%2Fwww.facebook.com%2F; test_cookie=1<br />
Content-Type: application/x-www-form-urlencoded<br />
Content-Length: 236<br />
charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&amp;locale=it_IT&amp;email=email_login%40email.com&amp;pass=tua_password&amp;charset_test=%E2%82%AC%2C%C2%B4%2C%E2%82%AC%2C%C2%B4%2C%E6%B0%B4%2C%D0%94%2C%D0%84&amp;lsd=VwSKT</div></td></tr></tbody></table></div>
<p>Spero che questo semplice esempio sia utile a molti di voi, e preciso che non Ã¨ stato realizzato con secondi fini e non Ã¨ stato scelto il sito di Facebook a caso. Facebook infatti impone molti ulteriori controlli quando si tenta di effettuare il login, che rende quindi impraticabile la realizzazione in Java di un programma apposito. Per effettuare un login su Facebook, ma anche molte altre operazioni, sono disponibili API che consentono di usare molti degli strumenti di Facebook in modo molto semplice e soprattutto consentito.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/live-http-headers-sniffare-ed-analizzare-il-traffico-http/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Google AdSense: guadagnare con un blog</title>
		<link>http://www.nerthase.com/blog/google-adsense-guadagnare-con-un-blog?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=google-adsense-guadagnare-con-un-blog</link>
		<comments>http://www.nerthase.com/blog/google-adsense-guadagnare-con-un-blog#comments</comments>
		<pubDate>Tue, 27 Apr 2010 19:04:48 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[AdSense]]></category>
		<category><![CDATA[AdWords]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Guadagnare]]></category>
		<category><![CDATA[PubblicitÃ ]]></category>
		<category><![CDATA[webmaster]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=694</guid>
		<description><![CDATA[Questa articolo Ã¨ rivolto a chi si Ã¨ chiesto almeno una volta, come fare per ricevere un minimo guadagno da tutto il tempo che spende su internet. Questo puÃ² essere il caso di un webmaster o di chi semplicemente gestisce un blog su un qualsiasi argomento. Tutte queste persone, riescono a coprire le spese di&#8230;]]></description>
			<content:encoded><![CDATA[<p>Questa articolo Ã¨ rivolto a chi si Ã¨ chiesto almeno una volta, come fare per ricevere un minimo guadagno da tutto il tempo che spende su internet. Questo puÃ² essere il caso di un webmaster o di chi semplicemente gestisce un blog su un qualsiasi argomento. Tutte queste persone, riescono a coprire le spese di gestione, grazie alla pubblicitÃ .</p>
<p>Infatti, avrete sicuramente notato che nella stragrande maggioranza di siti web sono presenti alcuni banner pubblicitari o link a siti esterni, che possono risultare piÃ¹ o meno invadenti, e piÃ¹ o meno interessanti. L&#8217;amministratore del sito web (o blog) guadagna per ogni click che viene effettuato sulle pubblicitÃ  che inserisce, mentre all&#8217;utente che effettua il click non viene chiesto assolutamente nulla. Questi costi sono sostenuti dalle aziende che pagano per essere inserite in questo circuito di pubblicitÃ .</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>Attualmente, il circuito di pubblicitÃ  migliore Ã¨ <a title="Google AdSense - PubblicitÃ " href="http://www.google.com/adsense/" target="_blank">Google AdSense</a> che pubblica annunci provenienti dal circuito Google AdWords. Queste due componenti di Google sono esattamente quelle descritte prima:</p>
<ul>
<li>Google AdSense paga il webmaster per i click effettuati sulle pubblicitÃ ;</li>
<li>Google AdWords Ã¨ il programma di gestione delle pubblicitÃ , che quindi riceve i pagamenti delle aziende che comprano la pubblicitÃ .</li>
</ul>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="AdSense Home Page" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/AdSense-Home-Page.png"><img class="aligncenter size-full wp-image-696" title="AdSense Home Page" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/AdSense-Home-Page.png" alt="" width="641" height="325" /></a></p>
<p><a title="Google AdSense - PubblicitÃ " href="http://www.google.com/adsense/" target="_blank">Google AdSense</a> offre un sistema di pubblicitÃ  molto avanzato, in quanto la pubblicitÃ  che offre, non Ã¨ statica, ma Ã¨ pertinente al contenuto della pagina in cui viene inserita.Â Google AdSense Ã¨ un ottimo strumento per sperare in un leggero guadagno dal proprio sito web, ma molto dipende anche dal traffico che il proprio sito genere. Infatti Ã¨ ben noto che non tutti i visitatori di un sito effettuano un click su una di queste pubblicitÃ , a volte per mancanza di interesse, o a volte perchÃ© ignorano che quello Ã¨ il principale sostenimento del webmaster. Anche nel mio caso, la pubblicitÃ  che inserisco negli articoli Ã¨ il principale sostenimento per riuscire a pagare i costi di gestione del dominio.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>Per quanto riguarda la configurazione diÂ <a title="Google AdSense - PubblicitÃ " href="http://www.google.com/adsense/" target="_blank">Google AdSense</a> per il proprio dominio, vi rimando alla <a title="Guida Google AdSense" href="http://webmarketing.html.it/guide/leggi/142/guida-google-adsense/" target="_blank">guida offerta da HTML.it</a>, che Ã¨ molto completa ed esaustiva. Non credo poteva essere fatto di meglio a riguardo.Â In giro per la rete si trovano altri metodi per guadagnare qualcosa, ma questo delle pubblicitÃ  (soprattutto di Google AdSense) Ã¨ il migliore in circolazione e quello che richiede un minore impegno da parte del webmaster.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/google-adsense-guadagnare-con-un-blog/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java: HTTP POST con Socket</title>
		<link>http://www.nerthase.com/blog/java-http-post-con-socket?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=java-http-post-con-socket</link>
		<comments>http://www.nerthase.com/blog/java-http-post-con-socket#comments</comments>
		<pubDate>Sat, 24 Apr 2010 21:39:16 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[PHP & MySql]]></category>
		<category><![CDATA[crack]]></category>
		<category><![CDATA[Hack]]></category>
		<category><![CDATA[hacker]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[HTTP]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[login]]></category>
		<category><![CDATA[Password]]></category>
		<category><![CDATA[POST]]></category>
		<category><![CDATA[Socket]]></category>
		<category><![CDATA[username]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=603</guid>
		<description><![CDATA[Come potete vedere nei precedenti articoli riguardanti il Brute Force in Java e i vari metodi di attacco per le password, la sicurezza informatica Ã¨ uno degli aspetti dell&#8217;informatica che preferisco, soprattutto per quanto riguarda la sicurezza in Internet. Vi sembrerÃ  strano, ma non potete immaginare quanta gente dia per scontato il fattore sicurezza mentre&#8230;]]></description>
			<content:encoded><![CDATA[<p>Come potete vedere nei precedenti articoli riguardanti il <a title="Brute Force in Java - Attacco - Crack - Hack" href="http://www.nerthase.com/blog/brute-force-in-java" target="_blank">Brute Force in Java</a> e i vari metodi di <a title="Attacco password - Crack - Hack" href="http://www.nerthase.com/blog/password-come-evitare-il-crack" target="_blank">attacco per le password</a>, la sicurezza informatica Ã¨ uno degli aspetti dell&#8217;informatica che preferisco, soprattutto per quanto riguarda la sicurezza in Internet. Vi sembrerÃ  strano, ma non potete immaginare quanta gente dia per scontato il fattore sicurezza mentre naviga in rete, crea account e soprattutto quanto <strong>sceglie la password</strong>.</p>
<p>Proprio sulla scelta della password vorrei soffermarmi un attimo con una piccola considerazione, basata su dati statistici. Infatti, secondo alcuni studi, la password usata piÃ¹ spesso dagli utenti Ã¨ la stringa <em>&#8220;123456&#8243;</em>. Questo dato mi Ã¨ sembrato sconvolgente, ma posso assicurarvi che Ã¨ molto realistico. Su questo argomento credo di fare a breve un articolo piÃ¹ approfondito, quindi per ora consideriamo semplicemente l&#8217;aspetto che riguarda Java, ed in particolare <strong>come fare una richiesta http usando il metodo POST, sfruttando i Socket</strong>.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>I due argomenti sopra citati sono strettamente collegati, in quanto le applicazioni web sono costruite essenzialmente sfruttando il metodo GET per le varie richieste. Il metodo POST viene usato per elementari requisiti di sicurezza per la trasmissione di dati sensibili, quali appunto <strong>username</strong> e <strong>password</strong> al momento del login su un servizio web. Il metodo che vi mostro quindi, puÃ² essere appositamente adattato per effettuare un login su un&#8217;applicazione web usando Java. Un esempio concreto di ciÃ², potrebbe essere la creazione di un&#8217;applicazione Java che effettua una connessione all&#8217;applicazione web per effettuare determinate operazioni.</p>
<p>Solitamente una applicazione web che richiede il login, ha una porzione della pagina che effettua una richiesta POST verso una specifica pagina che si occupa di verificare la correttezza dei dati forniti:</p>
<div class="codecolorer-container html4strict mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">form</span> <span style="color: #000066;">action</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login.php&quot;</span> <span style="color: #000066;">method</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;post&quot;</span> <span style="color: #000066;">target</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;_top&quot;</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;username&quot;</span> <span style="color: #000066;">size</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;30&quot;</span> <span style="color: #000066;">maxlength</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;20&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;password&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;password&quot;</span> <span style="color: #000066;">size</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;30&quot;</span> <span style="color: #000066;">maxlength</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;20&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;submit&quot;</span> <span style="color: #000066;">name</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;login&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Login&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">form</span>&gt;</span></div></td></tr></tbody></table></div>
<p>Per realizzare il nostro scopo, dobbiamo analizzare la pagina specifica, ed annotare la struttura del messaggio inviato tramite POST, e la pagina che riceve i dati, che Ã¨ specificata nel parametro <strong>action</strong> dell&#8217;elemento <em>form</em>.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p>Per quanto riguarda la parte Java, questo Ã¨ un esempio di come realizzare la richiesta POST usando solo le Socket.</p>
<div class="codecolorer-container java mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br /></div></td><td><div class="java codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.BufferedReader</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.BufferedWriter</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.InputStreamReader</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.io.OutputStreamWriter</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.InetAddress</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.Socket</span><span style="color: #339933;">;</span><br />
<span style="color: #000000; font-weight: bold;">import</span> <span style="color: #006699;">java.net.URLEncoder</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">class</span> SocketPost <span style="color: #009900;">&#123;</span> &nbsp; <br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">public</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">void</span> main <span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> args<span style="color: #009900;">&#91;</span><span style="color: #009900;">&#93;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> host &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;HOST-WEB-APP&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">int</span> port &nbsp; &nbsp;&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #cc66cc;">80</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> form_action &nbsp;<span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;PAGINA-DI-LOGIN&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> username &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;TUO-USERNAME&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> password &nbsp; &nbsp; <span style="color: #339933;">=</span> <span style="color: #0000ff;">&quot;TUA-PASSWORD&quot;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">boolean</span> result <span style="color: #339933;">=</span> login<span style="color: #009900;">&#40;</span>host, port, form_action, username, password<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">private</span> <span style="color: #000000; font-weight: bold;">static</span> <span style="color: #000066; font-weight: bold;">boolean</span> login <span style="color: #009900;">&#40;</span><span style="color: #003399;">String</span> host, <span style="color: #000066; font-weight: bold;">int</span> port, <span style="color: #003399;">String</span> form_action, <span style="color: #003399;">String</span> username, <span style="color: #003399;">String</span> password<span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">throws</span> <span style="color: #003399;">Exception</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Dati da inviare tramite POST</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Copmosizione tipica: &nbsp; &nbsp;username=TUOUSER&amp;password=TUAPASSWORD</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">String</span> data <span style="color: #339933;">=</span> &nbsp; <span style="color: #003399;">URLEncoder</span>.<span style="color: #006633;">encode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;username&quot;</span>, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;=&quot;</span> <span style="color: #339933;">+</span> <span style="color: #003399;">URLEncoder</span>.<span style="color: #006633;">encode</span><span style="color: #009900;">&#40;</span>username, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;&amp;&quot;</span> <span style="color: #339933;">+</span> <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">URLEncoder</span>.<span style="color: #006633;">encode</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;password&quot;</span>, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;=&quot;</span> <span style="color: #339933;">+</span> <span style="color: #003399;">URLEncoder</span>.<span style="color: #006633;">encode</span><span style="color: #009900;">&#40;</span>password, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Creo il Socket per la connessione all'host</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">InetAddress</span> addr <span style="color: #339933;">=</span> <span style="color: #003399;">InetAddress</span>.<span style="color: #006633;">getByName</span><span style="color: #009900;">&#40;</span>host<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">Socket</span> socket <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">Socket</span><span style="color: #009900;">&#40;</span>addr, port<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">BufferedWriter</span> wr <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">BufferedWriter</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">OutputStreamWriter</span><span style="color: #009900;">&#40;</span>socket.<span style="color: #006633;">getOutputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>, <span style="color: #0000ff;">&quot;UTF-8&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">write</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;POST &quot;</span> <span style="color: #339933;">+</span> form_action <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot; HTTP/1.0<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">write</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Host: &quot;</span> <span style="color: #339933;">+</span> host <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">write</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;Content-Length: &quot;</span> <span style="color: #339933;">+</span> data.<span style="color: #006633;">length</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #339933;">+</span> <span style="color: #0000ff;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">write</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;<span style="color: #000099; font-weight: bold;">\r</span><span style="color: #000099; font-weight: bold;">\n</span>&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Invio i dati tramite POST</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">write</span><span style="color: #009900;">&#40;</span>data<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">flush</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Leggo la risposta dall'host</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #003399;">BufferedReader</span> br <span style="color: #339933;">=</span> <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">BufferedReader</span><span style="color: #009900;">&#40;</span><span style="color: #000000; font-weight: bold;">new</span> <span style="color: #003399;">InputStreamReader</span><span style="color: #009900;">&#40;</span>socket.<span style="color: #006633;">getInputStream</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// Solitamente, in caso di pagine di login, </span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #666666; font-style: italic;">// il codice di risposta per un login valido Ã¨ 302</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #009900;">&#40;</span>br.<span style="color: #006633;">readLine</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span>.<span style="color: #006633;">equals</span><span style="color: #009900;">&#40;</span><span style="color: #0000ff;">&quot;HTTP/1.1 302 Found&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span> <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000066; font-weight: bold;">true</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">else</span> <span style="color: #000000; font-weight: bold;">return</span> <span style="color: #000066; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; wr.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; br.<span style="color: #006633;">close</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span></div></td></tr></tbody></table></div>
<p>Prima di poter essere in grado di riempire il codice Java, bisogna analizzare il sito presso il quale si vuole effettuare il login, per estrapolare tutti i dati necessari. Questa operazione non richiede un particolare sforzo, ma un minimo di esperienza Ã¨ sempre d&#8217;obbligo. Se avete bisogno di una mano, potete chiedere tranquillamente. Il metodo su illustrato Ã¨ stato realizzato solo a scopo illustrativo e deve essere utilizzato solo in possesso delle credenziali di accesso, e non per scopi malevoli.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/java-http-post-con-socket/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Bloglines: feed RSS sincronizzati online</title>
		<link>http://www.nerthase.com/blog/bloglines-feed-rss-sincronizzati-online?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=bloglines-feed-rss-sincronizzati-online</link>
		<comments>http://www.nerthase.com/blog/bloglines-feed-rss-sincronizzati-online#comments</comments>
		<pubDate>Fri, 23 Apr 2010 20:26:52 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Apple]]></category>
		<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[iPhone]]></category>
		<category><![CDATA[Mobile Phone]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[Blogline]]></category>
		<category><![CDATA[feed]]></category>
		<category><![CDATA[online]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[Sincronizzare]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=594</guid>
		<description><![CDATA[Per chi come me, vuole sempre tenersi aggiornato sugli ultimi articoli dei siti piÃ¹ visitati, dei blog dei propri amici, dei forum e quant&#8217;altro, non potrÃ  fare a meno di iscriversi ai feed RSS che questi siti offrono. In un precedente articolo, dedicato a Feedity , abbiamo visto come sia possibile fare questo anche per&#8230;]]></description>
			<content:encoded><![CDATA[<p>Per chi come me, vuole sempre tenersi aggiornato sugli ultimi articoli dei siti piÃ¹ visitati, dei blog dei propri amici, dei forum e quant&#8217;altro, non potrÃ  fare a meno di iscriversi ai feed RSS che questi siti offrono. In un precedente articolo, dedicato a <a title="Feedity RSS: creare RSS feed per tutti i siti e blog" href="http://www.nerthase.com/blog/creare-rss-per-tutti-i-siti" target="_blank">Feedity</a> , abbiamo visto come sia possibile fare questo anche per quei siti che non offrono automaticamente il feed RSS. Adesso invece voglio presentarvi un servizio che mi hanno consigliato spesso, che si occupa di aggregare tutti i feed RSS ai quali ci si desidera iscrivere.Â Il tutto viene gestito tramite una comoda interfaccia Web, quindi senza installazione di software, e senza problemi di sincronizzazione tra diversi Mac e/o iPhone. Ovviamente il servizio Ã¨ disponibile anche per Windows. <img src='http://www.nerthase.com/blog/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  Questo servizio Ã¨ <a title="Bloglines" href="http://www.bloglines.com/" target="_blank">Bloglines</a>.</p>
<p>Dopo questa breve introduzione, passiamo ad una introduzione dettagliata aÂ <a title="Bloglines" href="http://www.bloglines.com/" target="_blank">Bloglines</a>:</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p><a title="Bloglines" href="http://www.bloglines.com/" target="_blank">Bloglines</a> Ã¨ un servizio nato nel 2003, e in costante evoluzione, soprattutto dopo l&#8217;acquisizione da parte di IAC Search &amp; Media nel 2005. Da qui in poi, ha subito continui aggiornamenti e miglioramenti in risposta all&#8217;utilizzo da parte degli utenti. Attualmente offre un&#8217;interfaccia molto snella ed intuitiva, che lascia ampio spazio al nostro interesse, quindi ai feed RSS che si seguono.</p>
<p><a class="lightbox" style="text-decoration: none;" title="Bloglines logo" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-logo.png"><img class="aligncenter size-full wp-image-596" title="Bloglines logo" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-logo.png" alt="" width="347" height="82" /></a></p>
<p><a title="Bloglines" href="http://www.bloglines.com/" target="_blank">Bloglines</a> Ã¨ un servizio gratuito che richiede la registrazione, dopo la quale si avrÃ  a disposizione la propria pagina personale, dove sarÃ  possibile gestire e visualizzare i feed RSS.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Bloglines - Registrazione" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Registrazione.png"><img class="aligncenter size-full wp-image-597" title="Bloglines - Registrazione" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Registrazione.png" alt="" width="601" height="544" /></a></p>
<p>Di seguito una schermata iniziate di quella che sarÃ  la vostra pagina personale su Bloglines, dove nella colonna di sinistra sono visibili i feed RSS controllati, ed i numeri di articoli ancora non letti. Questi blog vengono visualizzati in grassetto. Sulla destra invece, c&#8217;Ã¨ la porzione piÃ¹ grande della pagina, che visualizza gli articoli del feed RSS selezionato. Potete impostare in che modo Bloglines visualizzi gli articoli dal menu opzioni.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Bloglines - In" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-In.png"><img class="aligncenter size-full wp-image-598" title="Bloglines - In" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-In.png" alt="" width="645" height="393" /></a></p>
<p>Come potete vedere nell&#8217;immagine seguente, dalla propria pagina personale sono permesse diverse opzioni, prima tra tutte l&#8217;aggiunta di un nuovo feed RSS. Inoltre Bloglines permette la creazione di cartelle per l&#8217;organizzazione dei feed RSS per categorie, o per il criterio che si ritiene piÃ¹ opportuno.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Bloglines - Add Edit" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Add-Edit.png"><img class="aligncenter size-full wp-image-599" title="Bloglines - Add Edit" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Add-Edit.png" alt="" width="652" height="323" /></a></p>
<p><a title="Bloglines" href="http://www.bloglines.com/" target="_blank">Bloglines</a> non Ã¨ solo un semplice servizio di aggregazione personale di feed RSS, ma Ã¨ una community molto ampia, e per questo motivo, tutte le liste di feed, sono per default condivise con tutti gli altri utenti. Potete quindi scegliere di rendere privata la vostra lista, o di decidere cartella per cartella cosa condividere e cosa no.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Bloglines - Opzioni" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Opzioni.png"><img class="aligncenter size-full wp-image-600" title="Bloglines - Opzioni" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Bloglines-Opzioni.png" alt="" width="681" height="256" /></a></p>
<p>E non finisce qui. Vi assicuro che una volta provato BloglinesÂ abbandonerete tutti i vostri lettori di feed RSS, per passare ad un&#8217;unico servizio per gestire il tutto. E lo potete fare anche da iPhone, infatti BloglinesÂ ha una interfaccia ottimizzata per iPhone che rende piacevole e comoda la navigazione e visualizzazione degli articoli su di esso.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/bloglines-feed-rss-sincronizzati-online/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Browize: giusta dimensione per le pagine Web</title>
		<link>http://www.nerthase.com/blog/browize-giusta-dimensione-per-le-pagine-web?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=browize-giusta-dimensione-per-le-pagine-web</link>
		<comments>http://www.nerthase.com/blog/browize-giusta-dimensione-per-le-pagine-web#comments</comments>
		<pubDate>Wed, 21 Apr 2010 19:18:34 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[browize]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[dimensione]]></category>
		<category><![CDATA[explorer]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[risoluzione]]></category>
		<category><![CDATA[Safari]]></category>
		<category><![CDATA[utility]]></category>
		<category><![CDATA[webmaster]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=590</guid>
		<description><![CDATA[Il lavoro del Webmaster comporta non pochi problemi, soprattutto per chi lo fa per passione, piÃ¹ che per lavoro. Infatti uno dei primi problemi con i quali tutti i Webmaster si sono confrontati, Ã¨ la corretta dimensione del proprio sito Web, per renderlo perfettamente visibile su tutti i browser, con qualsiasi risoluzione. Personalmente, quando mi&#8230;]]></description>
			<content:encoded><![CDATA[<p>Il lavoro del Webmaster comporta non pochi problemi, soprattutto per chi lo fa per passione, piÃ¹ che per lavoro. Infatti uno dei primi problemi con i quali tutti i Webmaster si sono confrontati, Ã¨ la corretta dimensione del proprio sito Web, per renderlo perfettamente visibile su tutti i browser, con qualsiasi risoluzione. Personalmente, quando mi sono trovato in situazioni simili, ho dovuto cambiare la risoluzione al mio monitor, per poi vedere come appariva la pagina. Ma per fortuna, che ora c&#8217;Ã¨ <a title="Browize" href="http://www.browize.com/" target="_blank">Browize</a>.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p><a title="Browize" href="http://www.browize.com/" target="_blank">Browize</a> Ã¨ un ottimo tool online, quindi non c&#8217;Ã¨ bisogno di effettuare nessun download e nessuna installazione, che Ã¨ in grado di cambiare la dimensione della finestra del nostro browser. Non bisogna piÃ¹ ricorrere quindi al trucco del cambio di risoluzione del monitor, perchÃ© <a title="Browize" href="http://www.browize.com/" target="_blank">Browize</a> cambia direttamente dimensione alla finestra, permettendoci di provare tutte le dimensioni piÃ¹ comuni, e vedere come si comporta il layout del nostro sito.</p>
<p>Questo punto potrÃ  sembrare di poco conto ai piÃ¹ inesperti, ma capita piÃ¹ spesso di quanto immaginiate, che un sito progettato perfettamente per una certa risoluzione, ad esempio le pubblicitÃ  (fonte di sostegno per i Webmaster) su una sidebar laterale, mentre con un&#8217;altra risoluzione, questa sidebar sia completamente oscurata, e non visibile all&#8217;utente.</p>
<p><a class="lightbox" style="text-decoration: none;" title="Browize" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Browize.png"><img class="aligncenter size-full wp-image-591" title="Browize" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Browize.png" alt="" width="611" height="703" /></a></p>
<p>Attualmente i browser supportati sono Firefox, Safari, Internet Explorer ed Opera, mentre Google Chrome rimane fuori dalla lista. Per i browser supportati, <a title="Browize" href="http://www.browize.com/" target="_blank">Browize</a> consiglia di chiudere tutti gli eventuali tab aperti.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/browize-giusta-dimensione-per-le-pagine-web/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Jimdo: creare siti web gratis</title>
		<link>http://www.nerthase.com/blog/jimdo-creare-siti-web-gratis?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=jimdo-creare-siti-web-gratis</link>
		<comments>http://www.nerthase.com/blog/jimdo-creare-siti-web-gratis#comments</comments>
		<pubDate>Fri, 02 Apr 2010 13:11:11 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[creare siti web]]></category>
		<category><![CDATA[gratis]]></category>
		<category><![CDATA[jimdo]]></category>
		<category><![CDATA[joomla]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=517</guid>
		<description><![CDATA[Nell&#8217;articolo precedente vi ho parlato dei software di blogging e CMS attualmente piÃ¹ usati. Oggi invece voglio farvi conoscere un modo ancora piÃ¹ semplice e veloce per creare un vostro sito web personale. Il servizio si chiama jimdo ed offre la possibilitÃ  di creare un sito web o un blog in pochi semplici passi. Tutto&#8230;]]></description>
			<content:encoded><![CDATA[<p>Nell&#8217;<a title="Blogger vs WordPress vs Joomla" href="http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla" target="_blank">articolo precedente</a> vi ho parlato dei <a title="Blogger vs WordPress vs Joomla" href="http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla" target="_blank">software di blogging e CMS</a> attualmente piÃ¹ usati. Oggi invece voglio farvi conoscere un modo ancora piÃ¹ semplice e veloce per creare un vostro sito web personale. Il servizio si chiama <a title="jimdo" href="http://it.jimdo.com/" target="_blank"><strong>jimdo</strong></a> ed offre la possibilitÃ  di <strong>creare un sito web o un blog in pochi semplici passi</strong>. Tutto quello di cui vi dovrete occupare, sarÃ  scegliere tra i tanti temi che sono proposti, ed iniziare a scrivere i contenuti, anche questo nel modo piÃ¹ facile che si possa immaginare. Tutto questo, rigorosamente <strong>GRATIS</strong>.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Jimdo Logo" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-Logo-big.png"><img class="aligncenter size-full wp-image-525" title="Jimdo Logo" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-Logo-big.png" alt="" width="455" height="162" /></a></p>
<h4>Creazione del sito web</h4>
<p>Prima di iniziare a creare il proprio sito web, Ã¨ necessaria la registrazione gratuita sul <a title="jimdo" href="http://it.jimdo.com/" target="_blank">sito web di jimdo</a>, che si occuperÃ  di assegnarci immediatamente un nostro spazio web. Inseriamo quindi il nostro <em>username</em> (che sarÃ  usato come indirizzo per il sito) e la nostra <em>email</em>,Â alla quale sarÃ  inviata la <em>password</em> per l&#8217;accesso al nostro sito.</p>
<p style="text-align: center;"><a class="lightbox" title="Jimdo 02" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-02.png"><img class="aligncenter size-full wp-image-518" title="Jimdo 02" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-02.png" alt="" width="641" height="288" /></a></p>
<p>Una volta aver completato la registrazione, <em>ed aver annotato la password comunicata via email</em>, possiamo collegarci al nostro indirizzo web che ci Ã¨ stato comunicato per email (nel mio caso <strong>nerthase.jimdo.com</strong>) ed effettuare l&#8217;accesso per iniziare la personalizzazione del sito.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Jimdo 03" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-03.png"><img class="aligncenter size-full wp-image-519" title="Jimdo 03" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-03.png" alt="" width="617" height="557" /></a></p>
<p>Quello che vedete Ã¨ il vostro sito web, giÃ  pronto. Come potete vedere, la personalizzazione Ã¨ molto intuitiva, ma vediamo comunque alcuni semplici passi da seguire per rendere unica la nostra impronta sul web.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<h4>Personalizzazione</h4>
<p>Come vedrete, una volta effettuato il login al vostro sito, sulla destra compare una barra delle impostazioni. Tramite questa semplice interfaccia, sarÃ  possibile gestire gran parte delle opzioni del vostro sito.Â Una delle prime cose da fare, Ã¨ sicuramente la modifica del layout del sito. Jimdo mette a disposizione molti layout, ma da anche la possibilitÃ  di crearsi il proprio layout. Per semplicitÃ , assumiamo di scegliere tra uno dei layout giÃ  presenti nelle opzioni.</p>
<p>Facciamo quindi click sulla voce <strong>Layout</strong> e scegliamo il layout piÃ¹ adatto a noi.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Jimdo 05" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-05.png"><img class="aligncenter size-full wp-image-520" title="Jimdo 05" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-05.png" alt="" width="642" height="364" /></a></p>
<p>Un altro aspetto piÃ¹ che positivo di jimdo, Ã¨ la possibilitÃ  di vedere tutte le modifiche in tempo reale, direttamente sul proprio sito web. Continuando la personalizzazione, io ho scelto di modificare la testata del sito, e quindi anche il titolo e tutti gli elementi a contorno. Per fare questo, basta fare click sulla testata, per veder comparire il menÃ¹ di personalizzazione relativo.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Jimdo 06" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-06.png"><img class="aligncenter size-full wp-image-521" title="Jimdo 06" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-06.png" alt="" width="665" height="475" /></a></p>
<p>Come avrete notato, in pochi minuti avete ottenuto un sito web perfetto per il vostro scopo, ancora una volta,Â <strong>GRATIS</strong>. Dopo aver giocato abbastanza con la grafica del sito, Ã¨ giunta l&#8217;ora di iniziare ad inserire i contenuti.</p>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<h4>Gestione dei contenuti</h4>
<p>Riguardo ai contenuti, jimdo permette la creazione immediata ed intuitiva di pagine web e dei relativi contenuti. Per modificare la struttura delle pagine web (non i contenuti per il momento) basta spostarsi sul menÃ¹ di sinistra e selezionare la voce <strong>Modifica la navigazione</strong>.</p>
<p><a class="lightbox" style="text-decoration: none;" title="Jimdo 07" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-07.png"><img class="aligncenter size-full wp-image-522" title="Jimdo 07" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-07.png" alt="" width="220" height="325" /></a></p>
<p>A questo punto apparirÃ  un menÃ¹ che permette la gestione delle pagine web, ma non solo. Da questo menÃ¹ Ã¨ anche possibile creare e gestire una gerarchia tra le pagine web stesse. Questa cosa non Ã¨ affatto scontata in <a title="CMS Joomla" href="http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla" target="_blank">CMS</a> come <a title="Joomla" href="http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla" target="_blank">Joomla</a>, in quanto la costruzione (ma soprattutto la modifica) di una gerarchia puÃ² richiedere molto piÃ¹ tempo.</p>
<p><a class="lightbox" style="text-decoration: none;" title="Jimdo 08" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-08.png"><img class="aligncenter size-full wp-image-523" title="Jimdo 08" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-08.png" alt="" width="301" height="554" /></a></p>
<p>Una volta organizzata la struttura delle pagine web del vostro sito, si puÃ² passare alla gestione dei relativi contenuti. Ormai avrete capito che con jimdo tutto Ã¨ semplicissimo, quindi per modificare il contenuto di una pagina web, basterÃ  fare click su di esso per veder comparire il relativo menÃ¹ di modifica.</p>
<p style="text-align: center;"><a class="lightbox" style="text-decoration: none;" title="Jimdo 10" href="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-10.png"><img class="aligncenter size-full wp-image-524" title="Jimdo 10" src="http://www.nerthase.com/blog/wp-content/uploads/2010/04/Jimdo-10.png" alt="" width="635" height="607" /></a></p>
<p><strong>Questo Ã¨ jimdo!</strong></p>
<p>Non credo ci sia molto da dire ancora, se non che jimdo offre potenti strumenti di amministrazione per il proprio sito web, oltre che utili strumenti per la gestione di <strong>Gallerie Fotografiche</strong>, <strong>Flickr</strong>, <strong>Google</strong> <strong>Map</strong>, <strong>YouTube</strong>, <strong>del.icio.us</strong> e molto altro ancora. Non vi resta che approfittare di 10 minuti liberi, per <strong>creare il vostro sito web GRATIS</strong>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/jimdo-creare-siti-web-gratis/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>Blogger vs WordPress vs Joomla</title>
		<link>http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=blogger-vs-wordpress-vs-joomla</link>
		<comments>http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla#comments</comments>
		<pubDate>Wed, 31 Mar 2010 17:52:32 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[WordPress]]></category>
		<category><![CDATA[blog]]></category>
		<category><![CDATA[blogger]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[joomla]]></category>
		<category><![CDATA[Plugin]]></category>
		<category><![CDATA[virtuemart]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=507</guid>
		<description><![CDATA[In pieno web 2.0 ognuno di noi sente l&#8217;esigenza di avere un proprio spazio personale, blog o sito che sia, quello che conta Ã¨ la presenza online. Vediamo quindi di fare chiarezza tra le piÃ¹ comuni piattaforme utilizzate. Tra queste, troviamo senz&#8217;altro Blogger e WordPress per quanto riguarda le piattaforme di blogging e Joomla per&#8230;]]></description>
			<content:encoded><![CDATA[<p>In pieno web 2.0 ognuno di noi sente l&#8217;esigenza di avere un proprio spazio personale, blog o sito che sia, quello che conta Ã¨ la presenza online. Vediamo quindi di fare chiarezza tra le piÃ¹ comuni piattaforme utilizzate. Tra queste, troviamo senz&#8217;altro <strong>Blogger</strong> e <strong>WordPress</strong> per quanto riguarda le piattaforme di blogging e <strong>Joomla</strong> per quanto riguarda la creazione di siti web piÃ¹ avanzati e personalizzabili.</p>
<p><a class="lightbox" style="text-decoration: none;" title="Blogger WordPress Joomla" href="http://www.nerthase.com/blog/wp-content/uploads/2010/03/blogger-wordpress-joomla.png"><img class="aligncenter size-full wp-image-509" title="Blogger WordPress Joomla" src="http://www.nerthase.com/blog/wp-content/uploads/2010/03/blogger-wordpress-joomla.png" alt="" width="600" height="300" /></a></p>
<p><strong>Blogger</strong> Ã¨ la piattaforma piÃ¹ diffusa per la creazione di blog personali in maniera rapida ed intuitiva. PiÃ¹ facile di cosÃ¬&#8230; non si puÃ²&#8230;</p>
<p><strong>PRO:</strong></p>
<ol>
<li>Completamente gratuito. Include uno spazio web del tipo <em>tuonome.blogspot.com</em>. Tutto quello di cui hai bisogno Ã¨ un account Google.</li>
<li>Incredibilmente semplice da usare e configurare.</li>
<li>Non Ã¨ richiesta alcuna conoscenza di HTML o linguaggi per la gestione di DataBase.</li>
<li>Ha a disposizione tool per creare articoli o aggiornare il blog in mobilitÃ  (vedi iPhone).</li>
</ol>
<p><strong>CONTRO:</strong></p>
<ol>
<li>L&#8217;indirizzo del vostro blog sarÃ  limitato a <em>tuonome.blogspot.com</em> e non puÃ² essere ulteriormente personalizzato.</li>
<li>I plugin a disposizione non sono numerosissimi e non coprono tutte le esigenze.</li>
</ol>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p><strong>WordPress</strong> Ã¨ la piattaforma di blogging in diretta concorrenza con Blogger. Anch&#8217;esso Ã¨ semplice da usare e a differenza di Blogger Ã¨ altamente personalizzabile grazie agli infiniti plugin a disposizione ed al sistema dei widget. Sempre a differenza di Blogger, WordPress mette a disposizione la creazione di account multipli per la gestione dei contenuti.</p>
<p><strong>PRO:</strong></p>
<ol>
<li>Facile da installare e configurare.</li>
<li>Forum di supporto ricco di informazioni, dove troverete risposte a tutte le vostre domande.</li>
<li>Ottimi plugin disponibili, per ogni vostra esigenza.</li>
<li>Account multipli per la gestione del blog e la creazione dei contenuti.</li>
<li>PuÃ² essere installato su qualsiasi dominio di vostro interesse.</li>
</ol>
<p><strong>CONTRO:</strong></p>
<ol>
<li>L&#8217;acquisto di un dominio da utilizzare con WordPress Ã¨ a spese vostre, ma almeno potete sceglierlo voi.</li>
</ol>
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div>
<p><strong>Joomla</strong> Ã¨ un CMS (Content Management System) con molte piÃ¹ funzionalitÃ  rispetto a Blogger e WordPress. Questo si traduce perÃ² in una maggiore difficoltÃ  nella realizzazione e configurazione di un sito basato su Joomla. In compenso, Ã¨ possibile creare siti web piÃ¹ complessi rispetto ad un semplice blog. Ci sono a disposizione anche in questo caso infiniti plugin, anche per quanto riguarda la creazione di siti web commerciali con la possibilitÃ  di effettuare acquisti online.</p>
<p><strong>PRO:</strong></p>
<ol>
<li>Ottimo.</li>
<li>La dinamicitÃ  del sito Ã¨ altamente configurabile.</li>
<li>Account multipli per la gestione del sito.</li>
<li>Un numero infinito di plugin, da non dimenticare <strong>Virtuemart</strong> per la creazione di siti web commerciali.</li>
<li>PuÃ² essere personalizzato abbastanza facilmente, in maniera piÃ¹ forte rispetto ai precedenti.</li>
<li>Facilmente aggiornabile.</li>
</ol>
<p><strong>CONTRO:</strong></p>
<ol>
<li>L&#8217;acquisto di un dominio Ã¨ a spese vostre.</li>
<li>Non adatto a chi si avvicina al web senza conoscenze basilari.</li>
<li>Sono disponibili meno template per la personalizzazione del vostro sito web.</li>
<li>La fase di installazione e configurazione puÃ² portare via molto tempo (relativamente a Blogger e WordPress).</li>
</ol>
<p>Dopo questa breve panoramica dei tre servizi piÃ¹ utilizzati, lascio a voi la scelta. Ricordate che la scelta va presa tenendo in considerazione la tipologia di sito web che andrete a creare, l&#8217;utilizzo che ne dovrete fare e l&#8217;utenza finale che vi aspettate. Per ora, l&#8217;unico servizio che consente di creare un sito web dove Ã¨ possibile effettuare acquisti, Ã¨ Joomla, e questo Ã¨ un punto molto importante a suo favore.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/blogger-vs-wordpress-vs-joomla/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Pagine Web dinamiche con JavaScript</title>
		<link>http://www.nerthase.com/blog/pagine-web-dinamiche-con-javascript?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=pagine-web-dinamiche-con-javascript</link>
		<comments>http://www.nerthase.com/blog/pagine-web-dinamiche-con-javascript#comments</comments>
		<pubDate>Thu, 18 Mar 2010 21:42:13 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[javascrip]]></category>
		<category><![CDATA[pagine web dinamiche]]></category>
		<category><![CDATA[style css]]></category>
		<category><![CDATA[web dinamico]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=384</guid>
		<description><![CDATA[Pochi giorni fa nel forum di HWUpgrade mi Ã¨ capitato di aiutare un utente che aveva problemi nel realizzare una pagina Web dinamica. A questo scopo, gli ho illustrato una semplice tecnica che fa uso di JavaScript, e che riporto qui per renderla disponibile a tutti. JavaScript Ã¨ un linguaggio di scripting molto usato nei&#8230;]]></description>
			<content:encoded><![CDATA[<p>Pochi giorni fa nel forum di <a title="Hardware Upgrade" href="http://www.hwupgrade.it/" target="_blank">HWUpgrade</a> mi Ã¨ capitato di aiutare un utente che aveva problemi nel realizzare una pagina Web dinamica. A questo scopo, gli ho illustrato una semplice tecnica che fa uso di <strong>JavaScript</strong>, e che riporto qui per renderla disponibile a tutti.</p>
<p>JavaScript Ã¨ un linguaggio di scripting molto usato nei siti Web, ma non voglio fare ora una lezione completa su di esso. Vengo direttamente al dunque, e quindi a mostrarvi come poter realizzare una pagina Web dinamica utilizzando JavaScript:</p>
<div class="codecolorer-container html4strict mac-classic" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;height:300px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br /></div></td><td><div class="html4strict codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #00bbdd;">&lt;!DOCTYPE html PUBLIC &quot;-//W3C//DTD XHTML 1.0 Transitional//EN&quot; &quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">html</span> xmlns<span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;http://www.w3.org/1999/xhtml&quot;</span>&gt;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">head</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">meta</span> <span style="color: #000066;">http-equiv</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Content-Type&quot;</span> <span style="color: #000066;">content</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text/html; charset=UTF-8&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">title</span>&gt;</span>Pagina HTML dinamica con JavaScript<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">title</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">script</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;text/javascript&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; function mostra () {<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Rendo visibile il DIV del contenuto<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;contenuto&quot;).style.display = &quot;block&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Attivo il bottone Nascondi, e disattivo il bottone Mostra<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;mostra&quot;).style.display = &quot;none&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;nascondi&quot;).style.display = &quot;block&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; }<br />
&nbsp; &nbsp; &nbsp; &nbsp; function nascondi () {<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Nascondo il DIV del contenuto<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;contenuto&quot;).style.display = &quot;none&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // Attivo il bottone Mostra, e disattivo il bottone Nascondi<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;nascondi&quot;).style.display = &quot;none&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; document.getElementById(&quot;mostra&quot;).style.display = &quot;block&quot;;<br />
&nbsp; &nbsp; &nbsp; &nbsp; }<br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">script</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">head</span>&gt;</span><br />
<br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">body</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">p</span>&gt;</span>Esempio pratico sull'utilizzo di JavaScript per realizzare pagine Web dinamiche.<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">p</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;pulsante&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;button&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Mostra&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;mostra&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:block;&quot;</span> <span style="color: #000066;">onclick</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;mostra()&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">input</span> <span style="color: #000066;">type</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;button&quot;</span> <span style="color: #000066;">value</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;Nascondi&quot;</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nascondi&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none;&quot;</span> <span style="color: #000066;">onclick</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;nascondi()&quot;</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">div</span> <span style="color: #000066;">id</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;contenuto&quot;</span> <span style="color: #000066;">style</span><span style="color: #66cc66;">=</span><span style="color: #ff0000;">&quot;display:none;&quot;</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Contenuto visibile quando viene premuto il pulsante <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">strong</span>&gt;</span>Mostra<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">strong</span>&gt;</span>. <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">br</span> <span style="color: #66cc66;">/</span>&gt;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Questo testo viene nascosto quando viene premuto il pulsante <span style="color: #009900;">&lt;<span style="color: #000000; font-weight: bold;">strong</span>&gt;</span>Nascondi<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">strong</span>&gt;</span>. <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">div</span>&gt;</span><br />
&nbsp; &nbsp; <span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">body</span>&gt;</span><br />
<span style="color: #009900;">&lt;<span style="color: #66cc66;">/</span><span style="color: #000000; font-weight: bold;">html</span>&gt;</span></div></td></tr></tbody></table></div>
<p>Il codice di sopra, Ã¨ abbastanza commentato, e credo sia di facile comprensione anche per i meno esperti. Potete copiarlo direttamente in un nuovo file <strong>html</strong> per vedere il suo funzionamento, e fare tentativi per adattarlo alle vostre esigenze. Il <em>fulcro</em> di questo codice, sta nella funzione utilizzata in JavaScript:</p>
<p style="text-align: center;"><code class="codecolorer html4strict mac-classic"><span class="html4strict">&nbsp;Â  Â  Â document.getElementById(&quot;ID_DELL_ELEMENTO&quot;).style.display = &quot;block&quot;; Â  Â Â </span></code></p>
<p>Questa semplice funzione, imposta lo <strong>stile</strong> dell&#8217;elemento della pagina che ha <strong>id=&#8221;ID_DELL_ELEMENTO&#8221;</strong>. In particolare, viene impostato il parametro <strong>display</strong> dello stile, che rende l&#8217;elemento visibile <strong>display=&#8221;</strong><strong>block&#8221;</strong> o invisibile <strong>display=&#8221;</strong><strong>none&#8221;</strong>.</p>
<p>Di seguito potete vedere un esempio di funzionamento di questo codice:<br />
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div></p>
<p style="text-align: center;">
<iframe class="" src="http://www.nerthase.com/blog/wp-content/uploads/2010/03/web-dinamico-javascript.html" style="width: 550px; height: 300px; " frameborder="0" scrolling="" onload="scro11me(this)"></iframe><script type="text/javascript">function scro11me(f){f.contentWindow.scrollTo(0,0); }</script>
<p>Se avete problemi nell&#8217;utilizzo di questo codice, o se pensate che non sia adatto alle vostre esigenze, fatemelo sapere, che cerchiamo di trovare insieme una soluzione.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/pagine-web-dinamiche-con-javascript/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Creare RSS per tutti i siti</title>
		<link>http://www.nerthase.com/blog/creare-rss-per-tutti-i-siti?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=creare-rss-per-tutti-i-siti</link>
		<comments>http://www.nerthase.com/blog/creare-rss-per-tutti-i-siti#comments</comments>
		<pubDate>Tue, 16 Mar 2010 21:24:26 +0000</pubDate>
		<dc:creator>nerthase</dc:creator>
				<category><![CDATA[Guide]]></category>
		<category><![CDATA[HTML & CSS]]></category>
		<category><![CDATA[Informatica & co]]></category>
		<category><![CDATA[Tutto il resto]]></category>
		<category><![CDATA[feed]]></category>
		<category><![CDATA[Feedity]]></category>
		<category><![CDATA[RSS]]></category>

		<guid isPermaLink="false">http://www.nerthase.com/blog/?p=375</guid>
		<description><![CDATA[Spesso mi capita di dover seguire siti web di alcuni miei professori, che non hanno a disposizione i feed RSS. Fino ad oggi usavo alcuni siti web che promettono di controllare gli aggiornamenti della pagina al posto tuo, e di notificarti le novitÃ . Questi siti perÃ² non hanno una vita lunga, anzi, spesso funzionano per&#8230;]]></description>
			<content:encoded><![CDATA[<p>Spesso mi capita di dover seguire siti web di alcuni miei professori, che non hanno a disposizione i <strong>feed RSS</strong>. Fino ad oggi usavo alcuni siti web che promettono di controllare gli aggiornamenti della pagina al posto tuo, e di notificarti le novitÃ . Questi siti perÃ² non hanno una vita lunga, anzi, spesso funzionano per poco tempo, fino a quando hanno un numero limitato di utenti. Oggi invece ho scoperto <strong><a title="Feedity - RSS per tutti" href="http://feedity.com/" target="_blank">Feedity</a></strong>.<br />
<div class="clear-block"><div class="ad alignleft"><script type="text/javascript"><!--
google_ad_client = "ca-pub-3082594121433544";
/* 728x90, creato 30/07/09 */
google_ad_slot = "9645358027";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div></div><br />
<a title="Feedity - RSS per tutti" href="http://feedity.com/" target="_blank">Feedity</a> Ã¨ un servizio web che crea i <strong>feed RSS</strong> anche per i siti che non li mettono a disposizione. Questa funzionalitÃ  Ã¨ molto utile, in quanto ognuno di noi puÃ² creare un feed RSS per un sito di interesse, e soprattutto possono essere effettuate molte personalizzazione.</p>
<p style="text-align: left;"><a class="lightbox" title="Feedity" href="http://www.nerthase.com/blog/wp-content/uploads/2010/03/Feedity.png"><img class="aligncenter size-full wp-image-376" title="Feedity" src="http://www.nerthase.com/blog/wp-content/uploads/2010/03/Feedity.png" alt="" width="541" height="388" /></a></p>
<p style="text-align: left;">La cosa piÃ¹ interessante di questo servizio, Ã¨ la creazione di un canale di feed personale, per ogni sito che si desidera monitorare. SarÃ  quindi possibile seguire i propri feed (creati tramite Feedity) con il lettore di RSS che si preferisce. Unica nota dolente, Ã¨ che l&#8217;account gratuito notifica un <em>massimo di 10 aggiornamenti per pagina</em>, non immediatamente, ma <em>ogni 5 ore</em>.</p>
<p style="text-align: left;">Il funzionamento del sito Ã¨ talmente semplice ed intuitivo che non necessita di alcuna spiegazione. Potete valutare voi di persona, ed in caso di problemi, cercheremo di trovare una soluzione.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.nerthase.com/blog/creare-rss-per-tutti-i-siti/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

