<?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>Informatica Friuli &#187; PHP</title>
	<atom:link href="http://www.informaticafriuli.com/category/programmazione-friuli-informatica/php-friuli/feed" rel="self" type="application/rss+xml" />
	<link>http://www.informaticafriuli.com</link>
	<description>Web, comunicazione, tecnologia, libertà  digitale... chiavi in mano</description>
	<lastBuildDate>Wed, 25 May 2011 18:13:16 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
<xhtml:meta xmlns:xhtml="http://www.w3.org/1999/xhtml" name="robots" content="noindex" />
		<item>
		<title>Come Aggiornare i Post Slug di WordPress</title>
		<link>http://www.informaticafriuli.com/1450/programmazione-friuli-informatica/php-friuli/come-aggiornare-i-post-slug-di-wordpress.html</link>
		<comments>http://www.informaticafriuli.com/1450/programmazione-friuli-informatica/php-friuli/come-aggiornare-i-post-slug-di-wordpress.html#comments</comments>
		<pubDate>Thu, 08 Apr 2010 00:36:11 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[plugin wordpress]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[import permalink]]></category>
		<category><![CDATA[link friendly]]></category>
		<category><![CDATA[permalink wordpress]]></category>
		<category><![CDATA[seo link]]></category>
		<category><![CDATA[slug wordpress]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/?p=1450</guid>
		<description><![CDATA[Se hai la necessità di aggiornare il post slug di N articoli del tuo blog e anche aggiornando i permalink non c&#8217;è verso di aggiornarli allora questo script potrebbe fare al caso tuo. Per eventuali dettagli sulla situazione e su come risolvere il problema ti rimando a questo link: Aggiornare Post Slug Con Query e [...]]]></description>
			<content:encoded><![CDATA[<p>Se hai la necessità di aggiornare il post slug di N articoli del tuo blog e anche aggiornando i permalink non c&#8217;è verso di aggiornarli allora questo script potrebbe fare al caso tuo.</p>
<p>Per eventuali dettagli sulla situazione e su come risolvere il problema ti rimando a questo link:</p>
<p><a title="SEO link friendly" href="http://www.cms-italia.org/come-fare-per/aggiornare-post-slug-con-query-e-script-php-145.html">Aggiornare Post Slug Con Query e Script PHP</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/1450/programmazione-friuli-informatica/php-friuli/come-aggiornare-i-post-slug-di-wordpress.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Autoresponder &#8211; Web Service By Sito NERD</title>
		<link>http://www.informaticafriuli.com/1239/programmazione-friuli-informatica/php-friuli/autoresponder-web-service-by-sito-nerd.html</link>
		<comments>http://www.informaticafriuli.com/1239/programmazione-friuli-informatica/php-friuli/autoresponder-web-service-by-sito-nerd.html#comments</comments>
		<pubDate>Mon, 03 Aug 2009 10:45:15 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Freelance - liberi professionisti]]></category>
		<category><![CDATA[Marketing]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[autoresponder]]></category>
		<category><![CDATA[bot mail]]></category>
		<category><![CDATA[mail marketing]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[sito nerd]]></category>
		<category><![CDATA[web service]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/?p=1239</guid>
		<description><![CDATA[Oltre ai canonici servizi e soluzioni web, Sito NERD ha creato una nuova funzionalità lato mail service: l&#8217; autorisponditore. Se sei in vacanza, in ferie o non sei disponibile in quel momento ad inviare una risposta alle richieste che ti arrtivano via mail, l&#8217; autoresponder Sito NERD lo farà per te, come una segreteria telefonica [...]]]></description>
			<content:encoded><![CDATA[<p>Oltre ai canonici servizi e soluzioni web, <a title="Web Design Udine Aquielia Friuli" href="http://www.sitonerd.com">Sito NERD</a> ha creato una nuova funzionalità lato mail service: l&#8217; <strong>autorisponditore</strong>.</p>
<p><em>Se sei in vacanza, in ferie o non sei disponibile in quel momento ad inviare una risposta alle richieste che ti arrtivano via mail, l&#8217; autoresponder Sito NERD lo farà per te, come una segreteria telefonica che comunica a chi ci telefona e siamo furoi sede, che avrà quanto prima nostre notizie appena torneremo in ufficio.</em></p>
<p><strong>Matteo</strong> aveva annunciato già qualche giorno fa i vari step di sviluppo dell&#8217; <strong>autoresponder</strong> e l&#8217; ultimo post per segnalare l&#8217; uscita della versione stabile 1.0 proprio 2 giorni fa:</p>
<ul>
<li>25 Jul 09 <a id="post-625" title="Permanent Link to Postfix autoresponder" rel="bookmark" href="http://matteo.cisilino.com/625/programmazione/postfix-autoresponder.html">Postfix autoresponder</a></li>
<li>27 Jul 09 <a id="post-632" title="Permanent Link to Postfix Autoresponder 0.1b" rel="bookmark" href="http://matteo.cisilino.com/632/networking/postfix-autoresponder-0-1b.html">Postfix Autoresponder 0.1b</a></li>
<li>28 Jul 09 <a id="post-635" title="Permanent Link to Postfix Autoresponder 0.2b" rel="bookmark" href="http://matteo.cisilino.com/635/networking/postfix-autoresponder-0-2b.html">Postfix Autoresponder 0.2b</a></li>
<li>30 Jul 09 <a id="post-646" title="Permanent Link to Postfix Autoresponder 1.0-RC1" rel="bookmark" href="http://matteo.cisilino.com/646/programmazione/postfix-autoresponder-1-0-rc1.html">Postfix Autoresponder 1.0-RC1</a></li>
<li>31 Jul 09 <a id="post-663" title="Permanent Link to autoresponding per email marketing" rel="bookmark" href="http://matteo.cisilino.com/663/pareri/autoresponding-per-email-marketing.html">autoresponding per email marketing</a></li>
<li>01 Aug 09 <a id="post-653" title="Permanent Link to Postfix Autoresponder Stable 1.0" rel="bookmark" href="http://matteo.cisilino.com/653/programmazione/653.html">Postfix Autoresponder Stable 1.0</a></li>
</ul>
<p>L&#8217; <strong>autoresponder</strong> by <a title="Soluzioni Open Source per il tuo business in Friuli" href="http://www.sitonerd.com">Sito NERD</a> è ancora in cerca di un logo ufficiale anche se <strong>Matteo</strong> mi ha fatto sapere che anche quello che ho creato io non è poi così malaccio.</p>
<div id="attachment_1240" class="wp-caption aligncenter" style="width: 310px"><img class="size-full wp-image-1240" title="autoresponder postfix" src="http://www.informaticafriuli.com/wp-content/uploads/2009/08/autoresponder_v_1.png" alt="Postfix autoresponder Sito NERD" width="300" height="113" /><p class="wp-caption-text">Postfix autoresponder Sito NERD</p></div>
<p>&#8230;hai idee o proposte per ottimizzare il logo già esistente? &#8230;o vuoi proporci un nuovo logo creato e ideato da te? <strong>suggerimenti@informaticafriuli.com</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/1239/programmazione-friuli-informatica/php-friuli/autoresponder-web-service-by-sito-nerd.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress e i campi personalizzati</title>
		<link>http://www.informaticafriuli.com/442/programmazione-friuli-informatica/php-friuli/wordpress-e-i-campi-personalizzati.html</link>
		<comments>http://www.informaticafriuli.com/442/programmazione-friuli-informatica/php-friuli/wordpress-e-i-campi-personalizzati.html#comments</comments>
		<pubDate>Wed, 27 Aug 2008 10:38:45 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[Creative Problem Solving]]></category>
		<category><![CDATA[Guide e How-to]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[Template]]></category>
		<category><![CDATA[campi personalizzati]]></category>
		<category><![CDATA[come fare]]></category>
		<category><![CDATA[custom fields]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/?p=442</guid>
		<description><![CDATA[Una guida, una bozza di quel che si puÃ² fare utilizzando i campi personalizzati &#8211; custom fields &#8211; di WordPress per impaginare contenuti e parte di un post. Avevo espresso questo mio enigma anche sul Forum per Webmaster TPU &#8211; Tutti Per Uno PREMESSA &#8211; IL PROBLEMA: Ho avuto la necessitÃ  di trovare la soluzione [...]]]></description>
			<content:encoded><![CDATA[<p>Una guida, una bozza di quel che si puÃ² fare utilizzando i campi personalizzati &#8211; <a title="Campi personalizzati WordPress" href="http://codex.wordpress.org/Using_Custom_Fields">custom fields</a> &#8211; di <strong>WordPress</strong> per impaginare contenuti e parte di un post.</p>
<p>Avevo espresso questo mio <a title="Video in homepage e nei post di WordPress" href="http://www.tutti-per-uno.org/cms/3052-wordpress-video-in-homepage.html#post24027">enigma</a> anche sul Forum per <strong>Webmaster TPU &#8211; Tutti Per Uno</strong></p>
<p><strong>PREMESSA &#8211; IL PROBLEMA:</strong></p>
<p>Ho avuto la necessitÃ  di trovare la soluzione ad un problema che mi assillava da tempo ovvero poter inserire nello stesso post di un sito basato su <strong><a title="piattaforma gratuita per creare blog" href="http://www.wordpress.com">WordPress</a></strong>, un oggetto quale per esempio un&#8217; immagine o un video YouTube e variarne le dimensioni a seconda che l&#8217; articolo si trovi in homepage (nel qual caso volevo una thumbnail o il video di dimensioni ridotte in altezza e larghezza) o nella pagina dell&#8217; articolo singolo (nel quel caso volevo mostrare l&#8217; oggetto in questione con le dimensioni originali o comunque ingrandito rispetto alla visualuizzazione in homepage).</p>
<p><strong>ANALISI DEL PROBLEMA:</strong></p>
<p>Approfondendo sono venuto alla conclusione che mi serviva del codice php per poter estrapolare e passare le dimensioni all&#8217; oggetto in questione, a seconda che mi trovassi in home o nella pagina dell&#8217; articolo singolo.</p>
<p>L&#8217; idea di base era che nei 2 blocchi di codice php i tag html per inserire le immagini o i tag per inserire contenuto flash in una pagina web sarebbero stati uguali per tutte le pagine, quindi la variabile sostanziale che avrei dovuto preoccuparmi sarebbe stato solamente il link da dove attingere il contenuto (src per il tag img per le immagini e value ed src per i tag per il video in flash di YouTube).</p>
<p>Per le dimensioni sarebbero state fissate giÃ  preventivamente nei due blocchi di codice php inseriti nella home e nella pagina dell&#8217; articolo singolo facilitato dal fatto che nel mio template, come nel 90% dei templates <strong>WordPress</strong>, esiste il file <strong>index.php</strong> per la homepage del blog e <strong>single.php</strong> dove si trova il codice per estrapolare il contenuto del post singolo.</p>
<p><strong>LA SOLUZIONE:</strong></p>
<p>Quindi detto questo, mi serviva solo capire come poter inserire agevolmente il link all&#8217; immagine o al video senza per forza dover a che fare con codice html e php.</p>
<p>WordPress mette a disposizione di default sotto il form, la textarea, in cui scrivere il post, una sezione dedicata ai campi personalizzati, che fino ad oggi non mi ero mai sognato di utilizzare, ma cercando soluzioone al mio problema su Google, quando mi son ricordato &#8220;campi personalizzati&#8221; mi Ã¨ scattata la molla rileggendo &#8220;personalizzati&#8221;&#8230; questo significa che se posso inserire etichetta/nome del campo e contenuto dello stesso, si sarebbe registrato nel database ergo avrei potuto estrapolare a mio piacimento e quando avrei avuto la necessitÃ  tale contenuto nel template come e dove mi sarebbe piaciuto.</p>
<p>Capito il problema, analizzato&#8230; la soluzione si trovava sotto i miei occhi da sempre.</p>
<p><strong>LA PRATICA:</strong></p>
<p style="padding-left: 30px;"><strong>IL CODICE:</strong></p>
<p style="padding-left: 30px;">Ho aperto con un editor testuale (io utilizzo joe da shell sulla mia postazione Ubuntu <img src='http://www.informaticafriuli.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> ) index.php del template WordPress che stavo utilizzando;</p>
<p style="padding-left: 30px;">Subito <strong>prima</strong> di questo codice che fa comparire il riassunto nella homepage:</p>
<p style="padding-left: 30px;">&lt;?php the_excerpt() ; ?&gt;</p>
<p style="padding-left: 30px;">..ho inserito tale codice (primo stralcio per inserire le miniature delle immagini &#8211; ed il secondo Ã¨ per i video YouTube):</p>
<p style="padding-left: 30px;">&lt;?php // pubblica la immagine se il campo personalizzato &#8216;immagine&#8217; esiste<br />
$values = get_post_custom_values(&#8220;videoyt&#8221;);<br />
if ( is_array($values) ) { ?&gt;<br />
&lt;div id=&#8221;imgCSS&#8221;&gt;<br />
&lt;img src=&#8221;&lt;?php $key=&#8221;immagine&#8221;; echo get_post_meta($post-&gt;ID, $key, true); ?&gt;&#8221; alt=&#8221;&lt;?php the_title(); ?&gt;&#8221; width=&#8221;150&#8243; height=&#8221;100&#8243; /&gt;<br />
&lt;/div&gt;<br />
&lt;?php } ?&gt;</p>
<p>&lt;?php // pubblica la immagine se il campo personalizzato &#8216;videoyt&#8217; esiste<br />
$values = get_post_custom_values(&#8220;videoyt&#8221;);<br />
if ( is_array($values) ) { ?&gt;<br />
&lt;div id=&#8221;introVIDEO&#8221;&gt;<br />
&lt;object width=&#8221;150&#8243; height=&#8221;100&#8243;&gt;<br />
&lt;param name=&#8221;movie&#8221; value=&#8221;&lt;?php $key=&#8221;videoyt&#8221;; echo get_post_meta($post-&gt;ID, $key, true); ?&gt;&#8221;&gt;&lt;/param&gt;<br />
&lt;param name=&#8221;allowFullScreen&#8221; value=&#8221;true&#8221;&gt;&lt;/param&gt;<br />
&lt;embed src=&#8221;&lt;?php $key=&#8221;videoyt&#8221;; echo get_post_meta($post-&gt;ID, $key, true); ?&gt;&#8221; type=&#8221;application/x-shockwave-flash&#8221; allowfullscreen=&#8221;true&#8221; width=&#8221;150&#8243; height=&#8221;100&#8243;&gt;<br />
&lt;/embed&gt;<br />
&lt;/object&gt;<br />
&lt;/div&gt;<br />
&lt;?php } ?&gt;</p>
<p style="padding-left: 30px;">Ho aperto il file single.php (il file come detto precedentemente, per estrapolare il contenuto di un post singolo):</p>
<p style="padding-left: 30px;">&lt;?php the_content(); ?&gt;</p>
<p style="padding-left: 30px;">Subito <strong>dopo</strong> questo codice che fa visualizzare tutto il contenuto del post:</p>
<p style="padding-left: 30px;">&#8230;ho inserito il secondo blocco di codice php:</p>
<p style="padding-left: 30px;">potete copiare il codice inserito nel <strong>index.php</strong> e variarne i paramentri <strong>width</strong> e <strong>height</strong></p>
<p>Fatte queste modifiche il sistema Ã¨ funzionante.</p>
<p>Nel momento in cui andrÃ² a scrivere il mio post ed utilizzerÃ² i campi personalizzati accoppiando l&#8217; etichetta <strong>immagine</strong> + link di dove si trova l&#8217; immagine o <strong>videoyt</strong> col link di dove si trova il video YouTube che voglio inserire, il codice php inserito nei due file sopra citati, si preoccuperÃ  di estrapolare e far visualizzare le immagini e i video con le dimensioni adattate alla pagina in cui verranno pubblicati.</p>
<p>Un esempio lo potete vedere sul sito del <a title="Canoa turistica - Friuli Venezia Giulia" href="http://www.canoafriuli.com">CKF &#8211; Canoa Kayak Friuli</a> nel blocco <strong>MOVIE</strong> a fondo pagina dell&#8217; homepage e cliccando per esempio sul titolo in rosso scuro di tale video, come compare lo stesso video sull&#8217; articolo singolo di tale news.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/442/programmazione-friuli-informatica/php-friuli/wordpress-e-i-campi-personalizzati.html/feed</wfw:commentRss>
		<slash:comments>30</slash:comments>
		</item>
		<item>
		<title>Sito Nerd e Zend Framework</title>
		<link>http://www.informaticafriuli.com/350/informatica-friuli/sito-nerd-e-zend-framework.html</link>
		<comments>http://www.informaticafriuli.com/350/informatica-friuli/sito-nerd-e-zend-framework.html#comments</comments>
		<pubDate>Sat, 01 Mar 2008 09:40:23 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[Notizie IF]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Sviluppo Software]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/informatica-friuli/sito-nerd-e-zend-framework-20080301.html</guid>
		<description><![CDATA[Da qualche tempo, almeno in background, stanno ribollendo un sacco di idee e servizi su Sito Nerd che presto vedranno la luce. E&#8217; stato fatto un brainstorming e scelto dallo staff di Sito Nerd una serie di servizi da mettere prossimamente a disposizione del pubblico. Cosa? Principalmente hosting su server e banda performanti, tutti i [...]]]></description>
			<content:encoded><![CDATA[<p>Da qualche tempo, almeno in background, stanno ribollendo un sacco di idee e servizi su <a href="http://www.sitonerd.com" title="hosting corporate blog Friuli"><strong>Sito Nerd</strong></a> che presto vedranno la luce.</p>
<p>E&#8217; stato fatto un brainstorming e scelto dallo <strong>staff di <a href="http://www.sitonerd.com" title="consulenza hosting blog Friuli">Sito Nerd</a></strong> una serie di servizi da mettere prossimamente a disposizione del pubblico.</p>
<p><strong>Cosa?</strong> Principalmente <em>hosting</em> su <em>server</em> e <em>banda</em> performanti, tutti i servizi annessi all&#8217; hosting ma abbiamo anche deciso di fornire qualcosa in piÃ¹: <em>Zend Framework</em>.</p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/zend_framework.jpg" alt="zend framework - sito nerd" title="zend framework - sito nerd" style="border: 0px solid #777777" border="0" height="112" hspace="5" vspace="5" width="500" /></p>
<p><strong>Zend Framework</strong> per gli addetti ai lavori, smanettoni o curiosi che volessero saperne di piÃ¹, Ã¨ un ambiente che rende possibile facile e veloce la creazione di codice per creare applicazioni e servizi web.</p>
<p><strong>Sito Nerd</strong> quindi ha voluto essere all&#8217; avanguardia e dar la possibilitÃ  di cavalcare l&#8217; onda delle ultime tecnologie in fatto di ambiente di sviluppo, pure chi sceglierÃ  di utilizzare i suoi servizi.</p>
<p><em>Sito ufficial: <a href="http://framework.zend.com/" title="Zend Framework - php e sviluppo">Zend Framework</a></em></p>
<p><em>Sito Nerd: <a href="http://www.sitonerd.com" title="Hosting blog Friuli">http://www.sitonerd.com</a></em></p>
<p><em>Contatti Sito Nerd: <img src="http://www.sitonerd.com/img/welcome.png" alt="Sito Nerd - Zend Framework" height="21" width="147" /> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/350/informatica-friuli/sito-nerd-e-zend-framework.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WP-Mail2Hotel &#8211; Plugin prenotazioni</title>
		<link>http://www.informaticafriuli.com/161/notizie-friuli/software-friuli/wp-mail2hotel-plugin-prenotazioni.html</link>
		<comments>http://www.informaticafriuli.com/161/notizie-friuli/software-friuli/wp-mail2hotel-plugin-prenotazioni.html#comments</comments>
		<pubDate>Thu, 30 Aug 2007 08:38:47 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Software]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/notizie-friuli/software-friuli/wp-mail2hotel-plugin-prenotazioni-20070830.html</guid>
		<description><![CDATA[E&#8217; stato creato un nuovo plugin per WordPress, un po per esigenzze motivate dal lavoro un po per studio e divertimento di smanettare coil Php e il MySQL. WP-Mail2Hotel Ã¨ un plugin che mette a disposizione un form per i contatti con tutti i campi, per agevolare la compilazione di una prenotazione per un hotel [...]]]></description>
			<content:encoded><![CDATA[<p>E&#8217; stato creato un nuovo plugin per <strong>WordPress</strong>, un po per esigenzze motivate dal lavoro un po per studio e divertimento di smanettare coil Php e il MySQL.</p>
<p><strong>WP-Mail2Hotel</strong> Ã¨ un plugin che mette a disposizione un form per i contatti con tutti i campi, per agevolare la compilazione di una prenotazione per un hotel o albergo che sia, da parte del potenziale cliente.</p>
<p>Maggiori informazioni sul plugin di prenotazione per <strong>WordPress</strong> li puoi trovare a questo link:</p>
<p><a href="http://www.tommasin.org/script-linux-server/wp-mail2hotel-plugin-20070830.html" title="WP-Mail2Hotel - Plugin WordPress">WP-Mail2Hotel Plugin prenotazione</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/161/notizie-friuli/software-friuli/wp-mail2hotel-plugin-prenotazioni.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Installatori per PHP</title>
		<link>http://www.informaticafriuli.com/70/programmazione-friuli-informatica/php-friuli/installatori-per-php.html</link>
		<comments>http://www.informaticafriuli.com/70/programmazione-friuli-informatica/php-friuli/installatori-per-php.html#comments</comments>
		<pubDate>Sat, 28 Apr 2007 13:20:51 +0000</pubDate>
		<dc:creator>carletto</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/installatori-per-php-20070428.html</guid>
		<description><![CDATA[Al fine di facilitare l&#8217;installazione dell&#8217;ambiente di sviluppo per il linguaggio PHP, negli ultimi anni sono comparsi degli installatori che con pochi clic permettono di ottenere velocemente un ambiente funzionante. L&#8217;utilizzo di questi strumenti permette di installare tutti i programmi per l&#8217;ambiente di sviluppo di php in modo veramente facile. Purtroppo il rovescio della medaglia [...]]]></description>
			<content:encoded><![CDATA[<p>Al fine di facilitare l&#8217;installazione dell&#8217;ambiente di sviluppo per il linguaggio PHP, negli ultimi anni sono comparsi degli installatori che con pochi clic permettono di ottenere velocemente un ambiente funzionante.<br />
<span id="more-70"></span><br />
L&#8217;utilizzo di questi strumenti permette di installare tutti i programmi per l&#8217;ambiente di sviluppo di php in modo veramente facile. Purtroppo il rovescio della medaglia Ã¨ che questa pratica alimenta un&#8217;insana ignoranza sul funzionamento dell&#8217;ambiente di sviluppo, che prima o poi si ripercuoterÃ  in problemi con la programmazione.  Ne consiglio l&#8217;utilizzo solo in caso di reale necessitÃ .</p>
<p>Ormai se ne possono trovare innumerevoli, per citarne qualcuno:</p>
<p><strong>XAMP </strong><a href="http://www.apachefriends.org/en/xampp.html">www.apachefriends.org/en/xampp.html</a></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/xampp.jpg" alt="xampp.jpg" align="left" border="0" height="59" hspace="5" vspace="5" width="58" />Installa un web server Apache con MySQL, PHP e Perl su sistemi GNU/Linux, Mac OS X, Solaris e Windows. Una volta installato, se si tiene il computer connesso e si ottiene un dominio dns (anche di quelli gratuiti), permette l&#8217;accesso alle proprie pagine web senza dover ricorrere all&#8217;indirizzo IP.</p>
<p><strong>PAMPA </strong><a href="http://pampa.phpsoft.it/">http://pampa.phpsoft.it</a><a href="http://pampa.phpsoft.it/"><br />
</a><br />
<img src="http://www.informaticafriuli.com/wp-content/uploads/php/pampa.jpg" alt="pampa.jpg" align="left" border="0" height="50" hspace="5" vspace="5" width="142" /> Di produzione italiana, puÃ² essere utilizzato da una chiavetta USB o da qualsiasi altro supporto con la particolaritÃ  che APACHE e MySQL lavorano su porte differenti da quelle di default permettendone l&#8217;utilizzo in contemporanea, senza creare conflitti, su un computer con giÃ  installata una WAMP.</p>
<p><strong>EasyPH </strong><a href="http://www.easyphp.org/">www.easyphp.org</a><a href="http://www.easyphp.org/"> </a></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/easyphp.jpg" alt="easyphp.jpg" align="left" border="0" height="47" hspace="5" vspace="5" width="51" />Di produzione francese, Ã¨ uno dei piÃ¹ usati dagli sviluppatori alle prime armi ma ha il difetto di essere piuttosto invasivo nel registro di sistema di Windows a tal punto che puÃ² comportare seri problemi ad una successiva installazione di un reale ambiente WAMP.</p>
<p><strong>WMServer </strong><a href="http://www.wmcreation.it"> www.wmcreation.it</a></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/wm_server_tools.jpg" alt="wm_server_tools.jpg" align="left" border="0" height="32" hspace="5" vspace="5" width="32" />Di produzione italiana, non invasivo. Propone una versione per l&#8217;installazione su pc ed una su chiavetta USB.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/70/programmazione-friuli-informatica/php-friuli/installatori-per-php.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>L&#8217;ambiente di sviluppo di PHP</title>
		<link>http://www.informaticafriuli.com/69/programmazione-friuli-informatica/php-friuli/lambiente-di-sviluppo-di-php.html</link>
		<comments>http://www.informaticafriuli.com/69/programmazione-friuli-informatica/php-friuli/lambiente-di-sviluppo-di-php.html#comments</comments>
		<pubDate>Wed, 25 Apr 2007 12:53:49 +0000</pubDate>
		<dc:creator>carletto</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/lambiente-di-sviluppo-di-php-20070425.html</guid>
		<description><![CDATA[Il server: Come si vede nel post Siti dinamici, PHP abbisogna di un server per visualizzare le pagine web. Quando si pubblica un sito in Internet di solito ci si rivolge ad un servizio di hosting che oltre al dominio fornisce anche lo spazio web su di un computer server. Per testare le pagine in [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Il server:</strong></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/apache.jpg" alt="apache.jpg" align="left" border="0" height="32" hspace="5" vspace="5" width="259" /></p>
<p>Come si vede nel post <a href="http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/siti-dinamici-20070420.html">Siti dinamici</a>, PHP abbisogna di un server per visualizzare le pagine web. Quando si pubblica un sito in Internet di solito ci si rivolge ad un servizio di hosting che oltre al dominio fornisce anche lo spazio web su di un computer server. Per testare le pagine in locale bisogna creare lo stesso ambiente e quindi installare sul proprio computer un server che altro non Ã¨ che un programma che attende una richiesta e dÃ  una risposta, il tutto tramite un protocollo di comunicazione prestabilito (altrimenti non capirebbe) che in questo caso Ã¨ l&#8217;HTTP: acronimo di Hyper Text Transfer Protocol (protocollo di trasferimento di un ipertesto).</p>
<p><span id="more-69"></span><br />
La bella notizia Ã¨ che uno dei migliori server HTTP, usato dagli stessi fornitori di hosting, Ã¨ disponibile a tutti gratuitamente: si chiama Apache e lo si puÃ² scaricare dal sito <a href="www.apache.org?phpMyAdmin=V0N0db6Fl62QWr6eBkly75xAGn3">www.apache.org</a>. E&#8217; un software Open Source che nel mercato occupa una fetta superiore al 50% (fonte <a href="http://www.netcraft.co.uk">www.netcraft.co.uk</a>), Ã¨ apprezzato per le sue caratteristiche di stabilitÃ , portabilitÃ , flessibilitÃ  e sicurezza.</p>
<p><strong>Il linguaggio lato-server:</strong></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/php.jpg" alt="php.jpg" align="left" border="0" height="54" hspace="5" vspace="5" width="97" /></p>
<p>Data la sua indole, Informatica Friuli non puÃ² che prendere in considerazione un linguaggio Open Source distribuito gratuitamente: PHP acronimo ricorsivo che sta per PHP Hypertext Preprocessor (PHP preprocessore di ipertesti). E&#8217; un linguaggio di scripting interpretato, concepito per la realizzazione di pagine web dinamiche.</p>
<p>Esistono anche altri linguaggi lato-server, come ad esempio: JSP di SUN, ColdFusion di Allair e ASP,ASP.NET di Microsoft, questi sono tutti a pagamento ed il loro codice sorgente non Ã¨ pubblico.</p>
<p>PHP lo si puÃ² scaricare dal sito <a href="www.php.net?phpMyAdmin=V0N0db6Fl62QWr6eBkly75xAGn3">www.php.net</a> dove si trova anche un utilissimo <a href="http://www.php.net/manual/it/">manuale</a>  tradotto in buona parte anche in italiano.</p>
<p><strong>Il database:</strong></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/mysql.jpg" alt="mysql.jpg" align="left" border="0" height="31" hspace="5" vspace="5" width="88" /></p>
<p>Un altro potente strumento alla portata di tutti Ã¨ il database MySQL, un DBMS<br />
(Database management system) relazionale liberamente scaricabile all&#8217;indirizzo<a href="www.mysql.com?phpMyAdmin=V0N0db6Fl62QWr6eBkly75xAGn3"><br />
www.mysql.com</a>. Lo consiglio in quanto anche questo software Ã¨ supportato dalla maggioranza degli hoster, l&#8217;uso non commerciale Ã¨ gratuito e nel web se ne trova una vasta documentazione.</p>
<p>L&#8217;uso commerciale, invece, richiede la relativa licenza a pagamento, per ovviare a questa spesa basta rilasciare il software sviluppato, che ne fa uso, sotto licenza GPL.</p>
<p><strong>Amministrazione database:</strong></p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/phpmyadmin.jpg" alt="phpmyadmin.jpg" align="left" border="0" height="75" hspace="5" vspace="5" width="140" /></p>
<p>PHP interagisce facilmente con MySQL, perÃ² serve anche un programma per amministrarlo efficacemente. La maggior parte degli hoster mettono a disposizione phpMyAdmin, sviluppato proprio in PHP, che permette la completa amministrazione del database tramite un&#8217; interfaccia web.</p>
<p>phpMyAdmin Ã¨ liberamente scaricabile dal sito ufficiale <a href="http://www.phpmyadmin.net/home_page/index.php">www.phpmyadmin.net/home_page/index.php</a></p>
<hr />
I software descritti sono quanto serve per creare l&#8217;ambiente di sviluppo al fine di realizzare siti in PHP; questo linguaggio puÃ² essere tranquillamente utilizzato anche con altri server e database, proprietari e no, ma questa configurazione Ã¨ la piÃ¹ conosciuta e funzionale. Se utilizzata su un sistema operativo GNU/Linux prende il nome di LAMP (Linux,Apache,MySQL,PHP), altrimenti se utilizzata su Windows prende il nome di WAMP.</p>
<p>L&#8217;accortezza Ã¨ di ricreare sul proprio computer un ambiente simile a quello messo a disposizione dal proprio hoster controllando che corrispondano le versioni dei software e le loro configurazioni al fine di evitare spiacevoli sorprese di mal funzionamento quando si trasferisce il sito in rete.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/69/programmazione-friuli-informatica/php-friuli/lambiente-di-sviluppo-di-php.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress, imagemanager e descrizione</title>
		<link>http://www.informaticafriuli.com/67/programmazione-friuli-informatica/php-friuli/wordpress-imagemanager-e-descrizione.html</link>
		<comments>http://www.informaticafriuli.com/67/programmazione-friuli-informatica/php-friuli/wordpress-imagemanager-e-descrizione.html#comments</comments>
		<pubDate>Tue, 24 Apr 2007 13:03:59 +0000</pubDate>
		<dc:creator>Davide Tommasin</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/wordpress-imagemanager-e-descrizione-20070424.html</guid>
		<description><![CDATA[Avevo l&#8217; esigenza di dover mettere la descrizione al di sotto di ogni foto che avrei postato nel blog basato su WordPress e ImageManager come plugin per la gestione delle immagini: ora ne faccio una mini guida per chi avesse la mia stessa necessitÃ  o volesse arricchire di ulteriori informazioni le immagini che inserisce nel [...]]]></description>
			<content:encoded><![CDATA[<p>Avevo l&#8217; esigenza di dover mettere la descrizione al di sotto di ogni foto che avrei postato nel blog basato su <strong>WordPress</strong> e <strong>ImageManager</strong> come plugin per la gestione delle immagini: ora ne faccio una mini guida per chi avesse la mia stessa necessitÃ  o volesse arricchire di ulteriori informazioni le immagini che inserisce nel suo blog.</p>
<p>Questa soluzione l&#8217; ho utilizzata per il progetto <a href="http://www.spazidelfare.it" title="Progetto interreg Friuli Slovenia aziende e mulini in catalogo online">Spazi del Fare</a>.</p>
<p>Prerequisiti:</p>
<p><a href="http://www.wordpress.org" title="piattaforma open source e libera per blog">WordPress</a> come piattaforma per blog/sito;</p>
<p><a href="http://www.soderlind.no/archives/2006/01/03/imagemanager-20/" title="Plugin Gestione immagini blog wordpress">ImageManager</a> come plugin per la gestione delle immagini;</p>
<p>Una volta che il blog ed il plugin sono operativi si andrÃ  a modificare il file <strong>ImageManager.php</strong> sostituendo queste linee di codice:</p>
<p>[php]case &#8217;3&#8242;: // Thumbnail with link to Image<br />
	str += &#8216;<a href="' + params.f_url + '?phpMyAdmin=V0N0db6Fl62QWr6eBkly75xAGn3"';<br />
	str += ' rel="lightbox" ';<br />
	str += ' >&#8216;;<br />
	str += &#8216;<img src="' + params.f_thumb_url + '"';<br />
	str += (params.f_alt) ? ' alt="' + params.f_alt +'"' : '';<br />
	str += (params.f_alt) ? ' title="' + params.f_alt +'"' : '';<br />
	str += (params.f_style) ? ' style="' + params.f_style +'"' : '';<br />
	str += (params.f_class) ? ' class="' + params.f_class +'"' : '';<br />
	str += (params.f_align) ? ' align="' + params.f_align +'"' : '';<br />
	str += ' width="' + thumbwidth +'"';<br />
	str += ' height="' + thumbheight +'"';<br />
	str += (params.f_horiz) ? ' hspace="' + params.f_horiz +'"' : '';<br />
	str += (params.f_vert) ? ' vspace="' + params.f_vert +'"' : '';<br />
	str += (params.f_border) ? ' border="' + params.f_border +'"' : '';<br />
	str += ' />&#8216;;<br />
	str += &#8216;</a>&#8216;;<br />
break;[/php]</p>
<p>con queste:</p>
<p>[php]case &#8217;3&#8242;: // Thumbnail with link to Image &#8211; Informatica Friuli Davide Tommasin<br />
	str += (params.f_align) ? &#8216;
<div class="sch2" style="float:' + params.f_align +'"' : '';<br />
	str += '<a href="' + params.f_url + '?phpMyAdmin=V0N0db6Fl62QWr6eBkly75xAGn3"';<br />
	str += ' rel="lightbox" ';<br />
	str += ' >&#8216;;<br />
	str += &#8216;<img src="' + params.f_thumb_url + '"';<br />
	str += (params.f_alt) ? ' alt="' + params.f_alt +'"' : '';<br />
	str += (params.f_alt) ? ' title="' + params.f_alt +'"' : '';<br />
	str += (params.f_style) ? ' style="' + params.f_style +'"' : '';<br />
	str += (params.f_class) ? ' class="' + params.f_class +'"' : '';<br />
	str += ' width="' + thumbwidth +'"';<br />
	str += ' height="' + thumbheight +'"';<br />
	str += ' /><br />&#8216; + params.f_alt;<br />
	str += &#8216;</a></div>
<p>&#8216;;<br />
break;[/php]</p>
<p>Nel mio caso solo per comoditÃ  mia personale ho aggiunto questa classe, dichiarata nel codice soprastante, all&#8217; interno del file style.css ma le direttive potranno benissimo essere inserite nella pagina delle opzioni di ImageManager direttamente dal pannello di controllo di WordPress.</p>
<p>[css].sch2 {<br />
background-color: #f3f3f3;<br />
border: 1px solid #777777;<br />
padding: 4px;<br />
margin: 5px;<br />
}[/css]</p>
<p>Un esempio lo potete vedere a questa pagina:</p>
<p><a href="http://www.spazidelfare.it/2006/12/13/idrovore-ospitale/#more-135" title="Wordpress ImageManager immagini con descrizione">Idrovore Ospitale ad Aquileia </a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/67/programmazione-friuli-informatica/php-friuli/wordpress-imagemanager-e-descrizione.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Siti dinamici</title>
		<link>http://www.informaticafriuli.com/64/programmazione-friuli-informatica/php-friuli/siti-dinamici.html</link>
		<comments>http://www.informaticafriuli.com/64/programmazione-friuli-informatica/php-friuli/siti-dinamici.html#comments</comments>
		<pubDate>Thu, 19 Apr 2007 22:29:03 +0000</pubDate>
		<dc:creator>carletto</dc:creator>
				<category><![CDATA[Guide e How-to]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/siti-dinamici-20070420.html</guid>
		<description><![CDATA[Spesso sento parlare persone, non del settore, di siti dinamici come quelli che integrano animazioni Flash, Applet Java o addirittura immagini animate. Peggio ancora, delle persone che dicono saper fare siti web, hanno difficoltÃ  a capire come funzionano quelli che utilizzano la programmazione lato server. Di solito si incomincia a fare siti web utilizzando il [...]]]></description>
			<content:encoded><![CDATA[<p>Spesso sento parlare persone, non del settore, di siti dinamici come quelli che integrano animazioni Flash, Applet Java o addirittura immagini animate. Peggio ancora, delle persone che dicono saper fare siti web, hanno difficoltÃ  a capire come funzionano quelli che utilizzano la programmazione lato server.<br />
<span id="more-64"></span></p>
<p>Di solito si incomincia a fare siti web utilizzando il linguaggio html e i fogli di stile CSS che servono a disporre i contenuti i contenuti e si possono  ottenere dei funzionamenti piÃ¹ sofisticati tramite il linguaggio Javascript. Tutto questo viene gestito dal browser sul computer dell&#8217;utente.</p>
<p>Quando apriamo dei file .html (o .htm) contenuti nel nostro computer, essi contengono tutto il necessario per essere visualizzati; allo stesso modo avviene se li richiediamo al server quando siamo connessi. Questo tipo di richiesta Ã¨ considerata &#8216;statica&#8217; anche se contiene delle animazioni.</p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/richiesta_html.gif" alt="richiesta_html.gif" border="0" height="97" hspace="5" vspace="5" width="458" /></p>
<p>Per capire la limitazione di questa tecnologia supponiamo di voler costruire un blog: giÃ  memorizzare i post ed i commenti degli utenti diventa impossibile. Per ottenere questo risultato bisogna utilizzare un programma che memorizza sul server i testi in un database.</p>
<p>In questo caso consideriamo il linguaggio php, che Ã¨ open source, totalmente gratuito e soprattutto concepito proprio per il web.</p>
<p>Ad esempio, per memorizzare un commento che l&#8217;utente desidera inserire in un blog si utilizza un form che invia il testo dal nostro computer (client) ad un file php, ospitato nel server web, contenente un programma che memorizza i dati in un database.</p>
<p>Allo stesso modo quando richiamiamo la pagina che contiene quel testo, un file php lo estrae dal database ed il server lo invia al nostro client.</p>
<p><img src="http://www.informaticafriuli.com/wp-content/uploads/php/richiesta_php.gif" alt="richiesta_php.gif" border="0" height="243" hspace="5" vspace="5" width="475" /></p>
<p>Vediamo punto per punto:</p>
<ol>
<li>Dal client parte la richiesta per ricevere la pagina .php che deve restituire il testo del blog.</li>
<li>Il Server rileva che l&#8217;estensione del file richiesto non Ã¨ .html, ma .php quindi richiede l&#8217;elaborazione del programma in esso contenuto all&#8217;interprete php.</li>
<li>L&#8217;interprete php esegue le indicazioni contenute nel programma: queste indicano di generare una pagina formattata in html contenente i testi del blog, quindi li richiede al database.</li>
<li>Il database restituisce i dati richiesti.</li>
<li>La pagina formattata in html contenente i testi del blog viene restituita al server.</li>
<li>Il server invia al client la pagina che viene visualizzata nel browser.</li>
</ol>
<p>Se si guarda il sorgente della pagina ricevuta si troverÃ  semplicemente un codice html e nessuna traccia del programma che l&#8217;ha generata. Questo Ã¨ avvenuto in modo trasparente all&#8217;utente e questo sistema per produrre contenuti in formato html al volo Ã¨ considerato come &#8216;dinamico&#8217;.</p>
<p>Si capisce subito la potenzialitÃ  di questa tecnologia; mentre in una concezione statica ogni pagina deve essere costruita per i propri contenuti, in un sito dinamico nella stessa pagina si possono inserire i contenuti che si vogliono, in rapporto alle richieste effettuate.</p>
<p>Mantenere e gestire dei dati sul server Ã¨ molto utile, ad esempio si possono verificare e conservare i dati che identificano un utente permettendo cosÃ¬ il login ad aree riservate, come ad esempio quelle adibite alla gestione della posta elettronica personale, oppure all&#8217;inserimento di scritti, foto e filmati. Questo ha reso possibile l&#8217;avvento del Web 2 in cui sono gli stessi utenti a creare i contenuti.</p>
<p>Esistono anche altri linguaggi lato server; sul mercato troviamo dei prodotti proprietari come Java Server Pages di Sun, ColdFusion di Allaire e ASP, ASP.NET di Microsoft. Questi prodotti non sono Open Source e sono a pagamento.</p>
<p>Il linguaggio php Ã¨ in continuo sviluppo e per quanto in Internet se ne trovi una vastissima documentazione  il sito di riferimento Ã¨ sicuramente quello ufficiale:</p>
<p><a href="http://www.php.net">http://www.php.net</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/64/programmazione-friuli-informatica/php-friuli/siti-dinamici.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Conferma di recapito delle email con le librerie GD</title>
		<link>http://www.informaticafriuli.com/53/programmazione-friuli-informatica/php-friuli/conferma-di-recapito-delle-email-con-le-librerie-gd.html</link>
		<comments>http://www.informaticafriuli.com/53/programmazione-friuli-informatica/php-friuli/conferma-di-recapito-delle-email-con-le-librerie-gd.html#comments</comments>
		<pubDate>Sat, 14 Apr 2007 16:03:41 +0000</pubDate>
		<dc:creator>carletto</dc:creator>
				<category><![CDATA[PHP]]></category>

		<guid isPermaLink="false">http://www.informaticafriuli.com/programmazione-friuli-informatica/php-friuli/conferma-di-recapito-delle-email-con-le-librerie-gd-20070414.html</guid>
		<description><![CDATA[Vi siete chiesti come mai le immagini nelle email possono essere pericolose? Non Ã¨ improbabile che alcune di esse servano a confermare ad un mittente malizioso che il vostro indirizzo esiste realmente per renderlo vittima di SPAM. Naturalmente la mia intenzione non Ã¨ certo indurvi ad andare a caccia di indirizzi email validi, bensÃ¬ illustrare [...]]]></description>
			<content:encoded><![CDATA[<p>Vi siete chiesti come mai le immagini nelle email possono essere pericolose? Non Ã¨ improbabile che alcune di esse servano a confermare ad un mittente malizioso che il vostro indirizzo esiste realmente per renderlo vittima di SPAM.</p>
<p>Naturalmente la mia intenzione non Ã¨ certo indurvi ad andare a caccia di indirizzi email validi, bensÃ¬ illustrare in modo semplice come si puÃ² ottenere la conferma che una email Ã¨ stata vista dal destinatario e far capire perchÃ¨ nei programmi per la gestione della posta elettronica Ã¨ meglio non abilitare con leggerezza la visualizzazione delle immagini.<br />
<span id="more-53"></span><br />
Prima di tutto accertatevi con phpinfo() di avere le librerie GD installate. Tramite queste librerie di php si possono creare delle immagini al volo con un semplice script.</p>
<p>Infatti nell&#8217;email in formato html non inserite una vera immagine, ma richiamate un file php in questo modo:</p>
<p><code >&lt;img src="http://www.tuodominio.ext/img.php" alt="" /&gt;</code></p>
<p>il tag img punta al file contenente lo script che genera l&#8217;immagine, per questo esempio sarÃ  in formato jpg di 1 pixel bianco.</p>
<p>Lo script oltre che a produrre l&#8217;immagine puÃ² fare anche altre cose, come inserire nel file  &#8216;elenco_email.txt&#8217; l&#8217;indirizzo email che passeremo tramite GET con una piccola modifica al tag img precedente:</p>
<p><code >&lt;img src="http://www.tuodominio.ext/img.php" alt="" /&gt;</code></p>
<p>logicamente www.tuodominio.ext e account@host.ext sono utilizzati come esempio e vanno sostituiti rispettivamente con l&#8217;indirizzo http dove Ã¨ posizionato il file img.php e l&#8217;indirizzo email che si desidera validare.</p>
<p>Nella stessa directory dove Ã¨ posizionato il file img.php create il file elenco_email.txt con i permessi chmod settati a 777.</p>
<p>ecco il file img.php:</p>
<p><code lang="php># apre il file di testo<br />
$fp = fopen("elenco_email.txt","a");<br />
if ($fp) {</p>
<p># inserisce data e orario del collegamento<br />
$data_orario = "\r\n".date("d.m.Y - H:i:s") ;<br />
fwrite($fp,$data_orario) ;</p>
<p># inserisce nel file di testo l'indirizzo email passato tramite GET<br />
if ( isset($_GET['email']) ) {<br />
$email = " - ".$_GET['email'] ;<br />
fwrite($fp,$email) ;<br />
}</p>
<p># chiude il file<br />
fclose($fp) ;<br />
}</p>
<p># istanzia un'immagine di un pixel<br />
$img = imageCreate(1,1);</p>
<p># gli assegna il colore bianco<br />
$back = imagecolorallocate($img,255,255,255);</p>
<p># imposta gli header<br />
header("Content-type: image/jpeg");</p>
<p># invia l'output come immagine jpeg<br />
imagejpeg($img);</p>
<p># libera la memoria<br />
imagedestroy($img);</code></p>
<p>CosÃ¬ quando il destinatario apre l&#8217;email e l&#8217;immagine viene visualizzata il suo indirizzo viene aggiunto al file &#8216;elenco_email.txt&#8217;.<br />
Lo script estremamente banale produce un elenco di indirizzi email validi con data e orario di visualizzazione.</p>
<p>Se fate delle prove inviando l&#8217;email con un client osservate che quando l&#8217;immagine viene visualizzata durante la scrittura, giÃ  lo script inserisce l&#8217;indirizzo nel file di testo. Quindi attenti a non confondervi.</p>
<p><strong>VARIANTI</strong></p>
<p>Invece che un&#8217;immagine di un pixel bianco possiamo, con le funzioni GD, creare immagini piÃ¹ sofisticate oppure caricare un&#8217;immagine creata precedentemente.</p>
<p>Potrebbe anche essere utile controllare con le espressioni regolari la validitÃ  dell&#8217;indirizzo email ricevuto in modo da evitare eventuali falsi positivi.</p>
<p>Piuttosto che utilizzare un file di testo gli indirizzi potrebbero essere inseriti direttamente in un database.</p>
<p><strong>CONSIDERAZIONI</strong></p>
<p>Se vi Ã¨ venuta l&#8217;acquolina in bocca pensando che potrebbe essere una soluzione per validare la ricezione delle email inviate con la funzione php() scordatevelo.<br />
Ormai tutti i software per la gestione della posta elettronica disabilitano di default la visualizzazione delle immagini rendendo questo uso inaffidabile.<br />
Anche le prove per far funzionare lo script sono state ardue a causa degli antivirus.</p>
<p>Con un po&#8217; di fantasia si possono trovare altri usi per questo script, come ad esempio implementare un semplice sistema di statistiche, passando via GET il nome della pagina in cui Ã¨ stata inserita l&#8217;immagine ed eventuali informazioni sul visitatore.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.informaticafriuli.com/53/programmazione-friuli-informatica/php-friuli/conferma-di-recapito-delle-email-con-le-librerie-gd.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

