<?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>PcExpert &#187; php</title>
	<atom:link href="http://www.pcexpert-blog.com/category/php/feed" rel="self" type="application/rss+xml" />
	<link>http://www.pcexpert-blog.com</link>
	<description></description>
	<lastBuildDate>Sat, 05 Nov 2011 22:20:26 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
<image>
  <link>http://www.pcexpert-blog.com</link>
  <url>http://www.pcexpert-blog.com/wp-content/plugins/favicon-manager/favicon.ico</url>
  <title>PcExpert</title>
</image>
<cloud domain='www.pcexpert-blog.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
		<item>
		<title>Migliorare l&#8217;indicizzazione su google dividendo grosse sitemap in più parti</title>
		<link>http://www.pcexpert-blog.com/2010/02/migliorare-lindicizzazione-su-google-dividendo-grosse-sitemap-in-piu-parti.html</link>
		<comments>http://www.pcexpert-blog.com/2010/02/migliorare-lindicizzazione-su-google-dividendo-grosse-sitemap-in-piu-parti.html#comments</comments>
		<pubDate>Sat, 13 Feb 2010 19:25:12 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[google]]></category>
		<category><![CDATA[guida]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[SEO]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[ottimizzazione motori ricerca]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[sitemap]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1642</guid>
		<description><![CDATA[<p></p>
<p>Come avrete potuto notare, è da molto che non scrivo su PcExpert. Oggi torno a scrivere qualcosa di interessate poichè ultimamente mi sono imbattutto in un bel problema che</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2010/02/sitemap.jpg"><img class="aligncenter size-medium wp-image-1643" title="sitemap" src="http://www.pcexpert-blog.com/wp-content/uploads/2010/02/sitemap-254x300.jpg" alt="" width="254" height="300" /></a></p>
<p>Come avrete potuto notare, è da molto che non scrivo su <a href="http://www.pcexpert-blog.com/">PcExpert</a>. Oggi torno a scrivere qualcosa di interessate poichè ultimamente mi sono imbattutto in un bel problema che ovviamente riguarda sempre il mio nuovo progetto <a href="http://www.notizie-informatiche.com/">Notizie Informatiche</a>.</p>
<p>Ho infatti avuto problemi con la sitemap che, a detta di Google, era diventata troppo grossa per essere letta correttamente (Erano presenti oltre 10.000 url!).<br />
Ho subito trovato in rete un interessante <strong>script php</strong> che, lanciato nella stessa cartella in cui si trova la nostra sitemap (generalmente la root del nostro server) in formato <strong>xml.gz</strong>, ci consentirà di suddividere quest&#8217;ultima in più parti creando ovviamente un<strong> file di index</strong> attraverso il quale fare sapere al bot di Google quali sono le varie parti che compongono per intero la nostra sitemap!<br />
Ho modificato il codice affinchè le url per ogni suddivisione non superino quota 1000. <a href="http://www.pcexpert-blog.com/download/downloadpage.php?id=305"><span style="color: #ff0000;"><strong><span style="text-decoration: underline;">Download script</span></strong></span></a> (da rinominare con estensione .php una volta scaricato).<br />
I risultati di questo lavoro sono stati veramente ottimi, <strong>Google ha infatti indicizzato precisamente 3,347 su 10,065 in appena 2 giorni</strong>.<br />
Ora una domana può sorgere spontanea: <span style="color: #000000;"><span style="text-decoration: underline;">Cosa può spingere un sito avente una sitemap con un massimo di 5000 url (senza quindi problemi di dimensioni eccessive) a ricorrere ad una sitemap multipla</span>?</span><br />
La risposta è molto semplice. I bot di google potrenno leggere contemporaneamente tutti i file che compongono la sitamap intera.</p>
<p>In conclusione <strong>velocizzeremo e renderemo più performante</strong> l&#8217;intero processo di lettura della nostra mappa! =)</p>
<p>Ecco infine un <a href="http://www.dyasonhat.com/wordpress-plugins/split-large-xml-sitemaps-php-script/">link al sito dell&#8217;autore originale dello script</a>!</p>
<p style="text-align: center;"><a href="../download/downloadpage.php?id=305"><strong><span style="text-decoration: underline;"><span style="color: #ff0000;">Download script</span></span></strong></a></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2010/02/migliorare-lindicizzazione-su-google-dividendo-grosse-sitemap-in-piu-parti.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Tre utili hacks da apportare al nostro blog WordPress</title>
		<link>http://www.pcexpert-blog.com/2009/12/tre-utili-hacks-da-apportare-al-nostro-blog-wordpress.html</link>
		<comments>http://www.pcexpert-blog.com/2009/12/tre-utili-hacks-da-apportare-al-nostro-blog-wordpress.html#comments</comments>
		<pubDate>Sun, 27 Dec 2009 01:12:11 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[guida]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[codice]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[trucchi]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1552</guid>
		<description><![CDATA[Ecco una carrellata di piccoli accorgimenti da apportare al nostro blog Wordpress per rendere migliore l'esperienza di navigazione.]]></description>
			<content:encoded><![CDATA[<p><img class="aligncenter size-medium wp-image-1553" title="Wordpress Hacks" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/12/ec47a_wordpress-hacks-tricks-300x240.jpg" alt="" width="300" height="240" /></p>
<p>Ecco una carrellata di piccoli accorgimenti da apportare al nostro blog WordPress per rendere migliore l&#8217;esperienza di navigazione.</p>
<h1><span style="color: #ff0000;">1. Pulsante per inviare l&#8217;articolo agli amici tramite email</span></h1>
<p>Per far comparire un pulsante per permettere ai lettori del nostro blog di poter inviare ogni aticolo per email ai propri amici, ci basterà inserire all&#8217;interno del file<strong> functions.php</strong> del tema in uso, il seguente frammento di codice:</p>
<pre class="brush: php; title: ; notranslate">
function direct_email($text=&quot;Send by email&quot;){
global $post;
$title = htmlspecialchars($post-&amp;gt;post_title);
$subject = 'Sur '.htmlspecialchars(get_bloginfo('name')).' : '.$title;
$body = 'I recommend this page : '.$title.'. You can read it on : '.get_permalink($post-&amp;gt;ID);
$link = '&lt;a title=&quot;'.$text.' : '.$title.'&quot; rel=&quot;nofollow&quot; href=&quot;mailto:?subject='.rawurlencode($subject).'&amp;amp;body='.rawurlencode($body).'&quot;&gt;'.$text.'&lt;/a&gt;';
return $link;
}
</pre>
<p>E richiamare la funzione all&#8217;interno del file <strong>single.php</strong> affinchè possa visualizzare correttamente il pulsante.</p>
<h1><span style="color: #ff0000;">2. Pulsante per salvare automaticamente ogni post su Delicius</span></h1>
<p>Altro piccolo e utile hack il cui codice va inserito sempre nel file<strong> single.php</strong> all&#8217;interno del loop.</p>
<pre class="brush: php; title: ; notranslate">
&lt;a href=&quot;http://del.icio.us/post?url=&lt;?php the_permalink();?&gt;&quot;&gt;Save this link to Delicious&lt;/a&gt;
</pre>
<h1><span style="color: #ff0000;">3. Aggiungere il pulsante &#8220;Cancella&#8221; e &#8220;Spam&#8221; all&#8217;interno dei commenti</span></h1>
<p>Per inserire questi due bottoni, che faciliteranno non poco l&#8217;amministrazione del nostro blog, all&#8217;interno dei commenti presenti nel nostro sito inseriamo il seguente codice all&#8217;interno del file <strong>functions.php</strong>.<br />
Nota: Ovviamente i due pulsanti saranno visibili solo dall&#8217;amministratore del blog!</p>
<pre class="brush: php; title: ; notranslate">
function cancella_commenti($id) {
  if (current_user_can('edit_post')) {
    echo '| &lt;a href=&quot;'.admin_url(&quot;comment.php?action=cdc&amp;c=$id&quot;).'&quot;&gt;Cancella&lt;/a&gt; ';
    echo '| &lt;a href=&quot;'.admin_url(&quot;comment.php?action=cdc&amp;dt=spam&amp;c=$id&quot;).'&quot;&gt;Spam&lt;/a&gt;';
  }
}
</pre>
<p>Per inserire invece i due pulsanti editiamo il file comments.php aggiungendo, dopo la riga &#8220;<strong>edit_comment_link();</strong>&#8220;, la seguente stringa:</p>
<pre class="brush: php; title: ; notranslate">
delete_comment_link(get_comment_ID());
</pre>
<p style="text-align: right;"><strong>Fonte:</strong> <strong><a href="http://www.wprecipes.com/">WpRecipes</a></strong></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/12/tre-utili-hacks-da-apportare-al-nostro-blog-wordpress.html/feed</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>WordPress: Visualizzare il numero di Tweets di ogni post e pagina del nostro blog</title>
		<link>http://www.pcexpert-blog.com/2009/12/wordpress-visualizzare-il-numero-di-tweets-di-ogni-post-e-pagina-del-nostro-blog.html</link>
		<comments>http://www.pcexpert-blog.com/2009/12/wordpress-visualizzare-il-numero-di-tweets-di-ogni-post-e-pagina-del-nostro-blog.html#comments</comments>
		<pubDate>Sun, 20 Dec 2009 19:13:01 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[guida]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[twitter]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1548</guid>
		<description><![CDATA[<p></p>
<p>Grazie a questo interessante script saremo in grado di visualizzare il numero di Tweets di ogni post e pagina del nostro blog WordPress. Affinchè esso funzioni correttamente, inseriamo il</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/12/twitter-wordpress.jpg"><img class="aligncenter size-full wp-image-1549" title="twitter-wordpress" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/12/twitter-wordpress.jpg" alt="twitter-wordpress" width="251" height="224" /></a></p>
<p>Grazie a questo interessante script saremo in grado di visualizzare il numero di Tweets di ogni post e pagina del nostro blog WordPress. Affinchè esso funzioni correttamente, inseriamo il seguente frammento di codice all&#8217;interno del file<strong> functions.php</strong> presente all&#8217;interno della cartella del tema in uso nel blog. Per esempio nel mio caso esso si troverà al seguente percorso: &#8220;<strong>wp-content/themes/<a href="http://www.pcexpert-blog.com/">PcExpert</a>/functions.php</strong>&#8220;.</p>
<pre class="brush: php; title: ; notranslate">
function numero_tweets($url) {
	$content = file_get_contents(&quot;http://api.tweetmeme.com/url_info?url=&quot;.$url);
	$element = new SimpleXmlElement($content);
	$tweets = $element-&gt;story-&gt;url_count;
 	echo $tweets.&quot; tweets!&quot;;
}
</pre>
<p>Inseriamo invece il seguente codice all&#8217;interno della pagina in cui vogliamo visualizzare il contatore. Poichè nell&#8217;esempio l&#8217;obbiettivo era quello di visualizzare il numero di tweets per ogni post, esso andrà inserito all&#8217;interno del file &#8220;<strong>single.php</strong>&#8220;.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php numero_tweets($post-&gt;permalink); ?&gt;
</pre>
<p><strong><span style="color: #ff0000;">NOTA:</span></strong> Per garantire il corretto funzionamento dello script in questione occore aver abilitato l&#8217;estensione <strong>SimpleXML PHP</strong>. Verificare quindi i parametri di default del proprio web server.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/12/wordpress-visualizzare-il-numero-di-tweets-di-ogni-post-e-pagina-del-nostro-blog.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>WordPress: Funzione per creare automaticamente da un post un riassunto di oltre 55 parole</title>
		<link>http://www.pcexpert-blog.com/2009/12/wordpress-funzione-per-creare-automaticamente-da-un-post-un-riassunto-di-oltre-55-parole.html</link>
		<comments>http://www.pcexpert-blog.com/2009/12/wordpress-funzione-per-creare-automaticamente-da-un-post-un-riassunto-di-oltre-55-parole.html#comments</comments>
		<pubDate>Fri, 04 Dec 2009 19:23:32 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[wordpress]]></category>
		<category><![CDATA[codice]]></category>
		<category><![CDATA[funzioni]]></category>
		<category><![CDATA[script]]></category>
		<category><![CDATA[snippet]]></category>
		<category><![CDATA[temi personalizzati]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1509</guid>
		<description><![CDATA[<p></p>
<p>Ecco di seguito un&#8217;utilissima funzione WordPress da usare nei nostri temi personalizzati per creare un riassunto automatico di oltre 55 parole di un post. Ovviamente la funzione per poter</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/12/velocita-wordpress.jpg"><img class="aligncenter size-medium wp-image-1513" title="velocita-wordpress" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/12/velocita-wordpress-300x232.jpg" alt="velocita-wordpress" width="300" height="232" /></a></p>
<p>Ecco di seguito un&#8217;utilissima funzione WordPress da usare nei nostri temi personalizzati per creare un riassunto automatico di <strong>oltre 55 parole</strong> di un post. Ovviamente la funzione per poter essere utilizzata correttamente va copiata per intero all&#8217;interno del file <strong>functions.php</strong> del nostro tema e va richiamata passandole come parametri la funzione <strong>get_the_content()</strong>, attraverso la quale si ottiene il contenuto di un post, seguita dal <strong>numero di parole massime</strong> che il nostro riassunto dovrà possedere.</p>
<p><strong><span style="color: #ff0000;">Nota:</span></strong> Ovviamente qualsiasi tag html inserito nel post verrà riconosciuto come tale.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
function do_excerpt($string, $word_limit) {

	$words = explode(' ', $string, ($word_limit + 1));
	if (count($words) &gt; $word_limit)
	array_pop($words);
	return implode(' ', $words).'...';

}
?&gt;
</pre>
<p>Ecco infine un esempio di chiamata della funzione:</p>
<pre class="brush: php; title: ; notranslate"> &lt;?php print do_excerpt(get_the_content(), 100); ?&gt; </pre>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/12/wordpress-funzione-per-creare-automaticamente-da-un-post-un-riassunto-di-oltre-55-parole.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Script PHP per recuperare una password effettuando un brute force del suo hash</title>
		<link>http://www.pcexpert-blog.com/2009/11/script-php-per-recuperare-una-password-effettuando-un-brute-force-del-suo-hash.html</link>
		<comments>http://www.pcexpert-blog.com/2009/11/script-php-per-recuperare-una-password-effettuando-un-brute-force-del-suo-hash.html#comments</comments>
		<pubDate>Sat, 28 Nov 2009 14:56:34 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[crack]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[sicurezza]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1474</guid>
		<description><![CDATA[<p>
Sul sito Eternalrise ho trovato un interessantissimo script in grado di recuperare una password effettuando un brute force del suo hash. L&#8217;autore spiega che il suo script è stato</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/php_code.jpg"><img class="aligncenter size-medium wp-image-1477" title="php_code" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/php_code-300x193.jpg" alt="php_code" width="300" height="193" /></a><br />
Sul sito <a href="http://eternalrise.com/blog/brute-force-php-script/">Eternalrise</a> ho trovato un interessantissimo script in grado di recuperare una password effettuando un brute force del suo hash. L&#8217;autore spiega che il suo script è stato scritto per PHP5 ma è possibile farlo funzionare anche sui web server dove vi è installato PHP4 semplicemente modificando la funzione <strong>hash()</strong> con <strong>md5()</strong>.</p>
<pre class="brush: php; title: ; notranslate">
&lt;?php
/*
 * Thanks to Robert Green for this script he wrote in python
 * http://www.rbgrn.net/blog/2007/09/how-to-write-a-brute-force-password-cracker.html
 * I took what we wrote and ported this to PHP
 *
 * This script was written for PHP 5, but should work with
 * PHP 4 if the hash() function is replaced with md5() or something else
 */

#########################################################
/*                   Configuration                     */

// this is the hash we are trying to crack
define('HASH', '098f6bcd4621d373cade4e832627b4f6');

// algorithm of hash
// see http://php.net/hash_algos for available algorithms
define('HASH_ALGO', 'md5');

// max length of password to try
define('PASSWORD_MAX_LENGTH', 4);

// available characters to try for password
// uncomment additional charsets for more complex passwords
$charset = 'abcdefghijklmnopqrstuvwxyz';
//$charset .= '0123456789';
//$charset .= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
//$charset .= '~`!@#$%^&amp;*()-_\/\'&quot;;:,.+=&lt;&gt;? ';
#########################################################
$charset_length = strlen($charset);

function check($password)
{
	if (hash(HASH_ALGO, $password) == HASH) {
		echo 'FOUND MATCH, password: '.$password.&quot;\r\n&quot;;
		exit;
	}
}

function recurse($width, $position, $base_string)
{
	global $charset, $charset_length;

	for ($i = 0; $i &lt; $charset_length; ++$i) {
		if ($position  &lt; $width - 1) {
			recurse($width, $position + 1, $base_string . $charset[$i]);
		}
		check($base_string . $charset[$i]);
	}
}

echo 'target hash: '.HASH.&quot;\r\n&quot;;
recurse(PASSWORD_MAX_LENGTH, 0, '');

echo &quot;Execution complete, no password found\r\n&quot;;

?&gt;
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/11/script-php-per-recuperare-una-password-effettuando-un-brute-force-del-suo-hash.html/feed</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Script PHP per chiudere automaticamente i tag lasciati aperti da utenti distratti</title>
		<link>http://www.pcexpert-blog.com/2009/11/script-php-per-chiudere-automaticamente-i-tag-lasciati-aperti-da-utenti-distratti.html</link>
		<comments>http://www.pcexpert-blog.com/2009/11/script-php-per-chiudere-automaticamente-i-tag-lasciati-aperti-da-utenti-distratti.html#comments</comments>
		<pubDate>Sat, 21 Nov 2009 20:40:54 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[codice]]></category>
		<category><![CDATA[script]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1450</guid>
		<description><![CDATA[<p></p>
<p>Ecco un interessante script php attraverso il quale è possibile chiudere i tag (bbcode) lasciati aperti da qualche utente distratto. Il funzionamento dello script è molto semplice: esso conta</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/php-logo.jpg"><img class="aligncenter size-full wp-image-1451" title="php-logo" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/php-logo.jpg" alt="php-logo" width="300" height="193" /></a></p>
<p>Ecco un interessante script php attraverso il quale è possibile chiudere i tag (bbcode) lasciati aperti da qualche utente distratto. Il funzionamento dello script è molto semplice: esso conta quante volte è stato aperto un tag e quante volte è stato chiuso, se la differenza è maggiore o uguale ad 1, allora almeno un tag è stato lasciato aperto, e quindi quest&#8217;ultimo verrà chiuso automaticamente dallo script.</p>
<pre class="brush: php; title: ; notranslate">
function count_t($tag, $text) {
    $count = 0;
    for($i=0;$i&lt;=strlen($text) - strlen($tag);$i++) {
        $s = substr($text, $i, strlen($tag));
        if($s == $tag)
            $count++;
    }

    return $count;
}

Codice PHP:
$tag = array(
    &quot;[b];[/b]&quot;,
    &quot;[i];[/i]&quot;
           /* tag_aperto;tag_chiuso */
);

$my_text = &quot;Il testo [b]è in grassetto&quot;;

foreach($tag as $t) {
    $g = explode(&quot;;&quot;, $t);
    $diff = count_t($g[0], $my_text) - count_t($g[1], $my_text);
    if($diff &gt;= 1) {
        for($j = 0;$j &lt; $diff;$j++)
                $my_text .= $g[1];
    }
}

echo $my_text;</pre>
<p style="text-align: right;"><a href="http://codesnippet.altervista.org/php-chiudere-automaticamente-tag-aperti/">Fonte</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/11/script-php-per-chiudere-automaticamente-i-tag-lasciati-aperti-da-utenti-distratti.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Tanti snippet di codice per integrare nella nostra applicazione facebook tutte le funzioni tipiche del social network</title>
		<link>http://www.pcexpert-blog.com/2009/11/tanti-snippet-di-codice-per-integrare-nella-nostra-applicazione-facebook-tutte-le-funzioni-tipiche-del-social-network.html</link>
		<comments>http://www.pcexpert-blog.com/2009/11/tanti-snippet-di-codice-per-integrare-nella-nostra-applicazione-facebook-tutte-le-funzioni-tipiche-del-social-network.html#comments</comments>
		<pubDate>Fri, 13 Nov 2009 23:12:31 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[facebook]]></category>
		<category><![CDATA[guida]]></category>
		<category><![CDATA[internet]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[codice]]></category>
		<category><![CDATA[develper]]></category>
		<category><![CDATA[snippet]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1372</guid>
		<description><![CDATA[<p></p>
<p>Dopo aver realizzato la mia nuova applicazione facebook, Magic 8 Ball, ho deciso di pubblicare una serie di snippet di codice che ho usato per scrivere l&#8217;applicazione in modo</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/facebook-snippet.jpg"><img class="aligncenter size-medium wp-image-1374" title="facebook snippet" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/facebook-snippet-300x196.jpg" alt="facebook snippet" width="300" height="196" /></a></p>
<p>Dopo aver realizzato la mia nuova applicazione facebook, <a href="http://apps.facebook.com/the-magic-ball/">Magic 8 Ball</a>, ho deciso di pubblicare una serie di snippet di codice che ho usato per scrivere l&#8217;applicazione in modo da aiutare tutti coloro che vogliono programmare su facebook. Purtroppo infatti la documentazione ufficiale non è delle migliori e, nella maggior parte dei casi, è in inglese!<br />
Ecco quindi alcuni snippet di codice grazie ai quali sarà possibile integrare la nostra app (scritta nei vari linguaggi di programmazione) con alcune funzioni tipiche di Facebook.<br />
Iniziamo con quella più banale che ci permetterà di aggiungere alla nostra app il suo titolo. L&#8217;effetto finale sarà il seguente:</p>
<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/titolo.png"><img class="aligncenter size-full wp-image-1375" title="titolo" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/titolo.png" alt="titolo" width="193" height="42" /></a></p>
<p>Ed ecco di seguito il codice necessario:</p>
<p>&lt;fb:header&gt;TITOLO DELLA NOSTRA APP&lt;/fb:header&gt;</p>
<p><span style="color: #ff0000;"><strong>NOTA:</strong></span> Facebook mette a disposizione due metodi distinti per intefrare la nostra app nella sua interfaccia. Quello che abbiamo utilizzato per scrivere il titolo e che useremo anche nello step successivo è l&#8217;<strong>FBML</strong> che è una estensione del linguaggio HTML che facebook provvederà ad interpretare correttamente associandogli i tag HTML e gli stili appropiati.</p>
<p>Altro snippet, come accennato, sarà quello per aggiungere un tab menù alla nostra applicazione. Il risultato finale sarà il seguente:</p>
<p style="text-align: center;"><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/tabs.png"><img class="aligncenter size-full wp-image-1376" title="tabs" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/tabs.png" alt="tabs" width="630" height="76" /></a></p>
<p style="text-align: left;">Ed il codice necessario a visualizzare il menù è il seguente:</p>
<pre class="brush: php; title: ; notranslate">&lt;fb:tabs&gt;;
&lt;fb:tab-item href=&quot;&lt;?php echo $url; ?&gt;;&quot; title=&quot;Home&quot; &gt;?php echo ($page == 'index.php') ? 'selected=&quot;true&quot;' : ''; ?&gt;; /&gt;
&lt;fb:tab-item href=&quot;&lt;php echo $url; ?&gt;;invite.php&quot; title=&quot;Invita Amici&quot; &lt;?php echo ($page == 'invite.php') ? 'selected=&quot;true&quot;' : ''; ?&gt; /&gt;
&lt;fb:tab-item href=&quot;http://www.<a href="http://www.pcexpert-blog.com/">PcExpert</a>-blog.com/&quot; title=&quot;<a href="http://www.pcexpert-blog.com/">PcExpert</a>&quot; align=&quot;right&quot; /&gt;
&lt;/fb:tabs&gt;</pre>
<p>Altro aspetto tipico di una applicazine facebook è quello di pubblicare sulla bacheca dell&#8217;utente che la sta usando un messaggio, un&#8217;immagine, un link. Tutto questo possiamo farlo attraverso la funzione <strong>stream_publish</strong>. Tuttavia quest&#8217;ultima, per funzionare correttamente, ha bisogno che gli vengano assegnati i relativi permessi.<br />
Per ottere tali permessi esistono 2 modi:</p>
<ul>
<li>Il primo modo di ottenere i permessi necessari è attraverso<strong> un tag FBML</strong> appropiato. Ecco il codice:</li>
<pre class="brush: php; title: ; notranslate">&amp;lt;fb:prompt-permission perms=&quot;read_stream,publish_stream&quot;&amp;gt; Ottieni i permessi per Magic 8 Ball&amp;lt;/fb:prompt-permission&amp;gt;</pre>
<p>Tuttavia questa opzione è poco consigliata perchè l&#8217;utente, per ottenere i permessi necessari, dovrà cliccare su un link  che risulta molto meno visibile e immediato rispetto ad una finestra apposita generata col secondo metodo descritto nel prossimo step.</p>
<li>Per ottenere una finestra di richiesta permessi molto più visibile ed immediata occorre integrare nella nostra app una piccola porzione di codice in javascript. Ecco come si presenterà la finestra di richiesta permessi:<br />
<a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/Prompt_for_anything.png"><img class="aligncenter size-full wp-image-1377" title="Prompt_for_anything" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/Prompt_for_anything.png" alt="Prompt_for_anything" width="509" height="451" /></a></li>
<li> Il codice da inserire sarà quindi il seguente:
<pre class="brush: php; title: ; notranslate">
if(!$has_permission){
$appurl=&quot;http://apps.facebook.com/the-magic-ball/&quot;;
?&gt;

&lt;script&gt;
&lt;!--
Facebook.showPermissionDialog('publish_stream');

//--&gt;
&lt;/script&gt;
</pre>
</li>
</ul>
<p>Ottenuti i permessi con uno dei due modi possiamo quindi passare a pubblicare un messaggio nella bacheca dell&#8217;utente. Ecco come al solito l&#8217;output e poi il codice necessario ad ottenerlo:</p>
<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/stream_publish1.png"><img class="aligncenter size-full wp-image-1379" title="stream_publish" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/stream_publish1.png" alt="stream_publish" width="558" height="195" /></a></p>
<p>Codice:</p>
<pre class="brush: php; title: ; notranslate">
$message = $messaggiobacheca; $attachment = array( 'name' =&gt; $risposte[$random], 'href' =&gt; 'http://apps.facebook.com/the-magic-ball/', 'caption' =&gt; '{*actor*} è soddisfatto/a della risposta ricevuta!', 'description' =&gt; 'Fai anche tu una domanda alla palla magica e lei ti fornirà tutte le risposte che vorrai! ', 'media' =&gt; array(array('type' =&gt; 'image', 'src' =&gt; 'http://www.<a href="http://www.pcexpert-blog.com/">PcExpert</a>-blog.com/8ball/MY_DIR/8ball.png', 'href' =&gt; 'http://apps.facebook.com/the-magic-ball/')), 'latitude' =&gt; '41.4', 'longitude' =&gt; '2.19'); $action_links = array( array('text' =&gt; 'Fai una domanda anche tu!', 'href' =&gt; 'http://apps.facebook.com/the-magic-ball/'));
$attachment = json_encode($attachment);
$action_links = json_encode($action_links);
$facebook-&gt;api_client-&gt;stream_publish($message, $attachment, $action_links);
?&gt;
</pre>
<p>Concludo infine questo breve excursion con la specifica finestra degli inviti attraverso la quale è possibile inviare una mail, a tutti gli utenti selezionati tramite apposito pannello, per invitarli a provare la nostra applicazione. Ecco un codice di esempio (in php) che ovviamente va modificato sostituendo i vari campi specifici con i link alla vostra app. Nella mia applicazione l&#8217;intero codice l&#8217;ho salvato in un file <strong>invite.php</strong> ed è possibile richiamare il menù attraverso l&#8217;apposito campo del tab menù.</p>
<pre class="brush: php; title: ; notranslate">

$api_key = 'INCOLLA_QUI_IL_TUO';
$secret = 'INCOLLA_QUI_IL_TUO';
$app_name = &quot;Magic 8 Ball&quot;;  //titolo della nostra app
$app_url = &quot;http://apps.facebook.com/the-magic-ball/&quot;;  //url della nostra app
$invite_href = &quot;invite.php&quot;;
require_once 'facebook.php';
$facebook = new Facebook($api_key, $secret);
require_frame(); $user = $facebook-&amp;gt;require_login();
if(isset($_POST[&quot;ids&quot;])) {
echo &quot;Grazie per aver invitato &quot;.sizeof($_POST[&quot;ids&quot;]).&quot; dei tuoi amici ad usare &lt;strong&gt;&lt;a href=&quot;\&quot;&gt;&quot;.$app_name.&quot;&lt;/a&gt;&lt;/strong&gt;.

\n&quot;;
echo &quot;
&lt;a href=&quot;\&quot;&gt;Click here to return to &quot;.$app_name.&quot;&lt;/a&gt;.
&quot;;
} else {
$fql = 'SELECT uid FROM user WHERE uid IN (SELECT uid2 FROM friend WHERE uid1='.$user.') AND is_app_user = 1';
$_friends = $facebook-&amp;gt;api_client-&amp;gt;fql_query($fql);
$friends = array();
if (is_array($_friends) &amp;amp;&amp;amp; count($_friends)) {
	foreach ($_friends as $friend) {
	$friends[] = $friend['uid'];
	}
	}
	$friends = implode(',', $friends);
	$content =
	&quot; ha iniziato ad usare &lt;a href=&quot;\&quot;&gt;&quot;.$app_name.&quot;&lt;/a&gt; e pensa che sia molto divertente!\n&quot;.&quot;get_add_url().&quot;\&quot; label=\&quot;Prova anche tu &quot;.$app_name.&quot; e aggiungila al tuo profilo\&quot;/&gt;&quot;;
	?&gt;
</pre>
<p>L&#8217;output del menù sarà il seguente:</p>
<p style="text-align: left;"><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/invite.png"><img class="aligncenter size-full wp-image-1380" title="invite" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/invite.png" alt="invite" width="630" height="666" /></a><br />
Vi invito quindi a provare la mia applicazione d&#8217;esempio per farvi anche un&#8217;idea di come funzionano tutte le parti di codice trascritte nel post. <a href="http://apps.facebook.com/the-magic-ball/"><span style="color: #ff0000;"><strong>Vai a The Magic Ball</strong></span></a>.</p>
</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/11/tanti-snippet-di-codice-per-integrare-nella-nostra-applicazione-facebook-tutte-le-funzioni-tipiche-del-social-network.html/feed</wfw:commentRss>
		<slash:comments>21</slash:comments>
		</item>
		<item>
		<title>Effettuare il debug in locale delle nostre applicazioni Facebook scritte in PHP</title>
		<link>http://www.pcexpert-blog.com/2009/11/provare-in-locale-tutte-le-nostre-applicazioni-facebook-scritte-in-php.html</link>
		<comments>http://www.pcexpert-blog.com/2009/11/provare-in-locale-tutte-le-nostre-applicazioni-facebook-scritte-in-php.html#comments</comments>
		<pubDate>Wed, 11 Nov 2009 15:09:21 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[facebook]]></category>
		<category><![CDATA[guida]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[app]]></category>
		<category><![CDATA[debug]]></category>
		<category><![CDATA[developer]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1363</guid>
		<description><![CDATA[<p></p>
<p>Se sviluppiamo applicazioni Facebook in PHP può essere utile testare in locale le nostre app per risparmiare del tempo prezioso.  Purtroppo il noto social network non offre un ambiente</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/facebook_developer.jpg"><img class="aligncenter size-medium wp-image-1364" title="facebook_developer" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/11/facebook_developer-300x200.jpg" alt="facebook_developer" width="300" height="200" /></a></p>
<p>Se sviluppiamo applicazioni <strong>Facebook in PHP</strong> può essere utile testare in locale le nostre app per risparmiare del tempo prezioso.  Purtroppo il noto social network non offre un ambiente di prova e costringe tutti i developers a provare direttamente su Facebook i loro progetti.<br />
Tuttavia esiste un metodo per ricreare in locale l&#8217;ambiente del social network per effettuare il debug delle nostre app.</p>
<p><span style="color: #ff0000;"><strong>Prerequisiti:</strong></span> <strong>Apache</strong> e <strong>PHP 5.x</strong> già installati.</p>
<ol>
<li>Impostare il nostro computer per un <strong>portforwarding</strong> (detto anche <strong>tunneling</strong>). Questa operazione consiste nel permettere il trasferimento dei dati (<em>forwarding</em>) da un computer ad un altro tramite una specifica porta di comunicazione.<br />
Possiamo trovare utili informazioni sulle diverse configurazioni disponibili per i vari tipi di routers attualmente sul mercato al <a href="http://www.pcexpert-blog.com/download/redirectpage.php?id=208">seguente indirizzo</a>.</li>
<li>Registriamoci e creiamoci un alias sul sito <a href="http://www.pcexpert-blog.com/download/redirectpage.php?id=209">dyndns.org</a> (esempio <strong>myfacebookapp.dyndns.org</strong>) e facciamolo puntare al nostro indirizzo IP. Se possediamo invece un ip dinamico installiamo <a href="http://www.pcexpert-blog.com/download/downloadpage.php?id=210">dyndns updater</a>.</li>
<li>Accediamo al file di Apache tramite il nostro alias dyndyns (<strong>myfacebookapp.dyndns.org</strong>).<br />
<span style="color: #ff0000;"><strong>Nota:</strong></span> Molti router non supportano <a href="http://www.pcexpert-blog.com/download/redirectpage.php?id=211">IP di loopback</a>, quindi potrebbe essere necessario passare attraverso un proxy. Assicuriamoci inoltre di aver configurato il Firewall per tenere &#8220;aperte&#8221; le porte usate nell&#8217;operazione di forwarding.</li>
<li>Se arrivati a questo punto tutto è andato per il meglio possiamo continuare installando l&#8217;ambiente PHP ed un IDE PHP che abbia integrato <a href="http://www.pcexpert-blog.com/download/redirectpage.php?id=212">xdebugging</a> (come <a href="http://www.pcexpert-blog.com/download/downloadpage.php?id=213">Netbeans 6.7</a> o <a href="http://www.pcexpert-blog.com/download/downloadpage.php?id=214">Aptana 1.5</a>)</li>
<li>Configuriamo il file php.ini affichè possa supportare xdebug. Aggiungiamo quindi, alla fine del file, le seguenti righe:
<pre>zend_extension_ts=”c:/php/ext/php_xdebug-2.0.5-5.2.dll”
      xdebug.remote_enable=on
      xdebug.remote_handler=dbgp
      xdebug.remote_mode=req
      xdebug.remote_host=localhost
      xdebug.remote_port=9000</pre>
<p><span style="color: #ff0000;"><strong>Nota:</strong></span> Ovviamente occorre modificare la prima riga con la path corretta!</li>
</ol>
<p>Arrivati a questo punto dovremmo essere in grado di eseguire il locale il debug della nostra applicazione per Facebook scritta in PHP.</p>
<p style="text-align: right;"><a href="http://www.uebersoftware.com/2009/07/fb-series-locally-debug-your-php-facebook-app/">Fonte</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/11/provare-in-locale-tutte-le-nostre-applicazioni-facebook-scritte-in-php.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>PHP: Due metodi semplici e veloci per leggere un file XML</title>
		<link>http://www.pcexpert-blog.com/2009/10/php-due-metodi-semplici-e-veloci-per-leggere-un-file-xml.html</link>
		<comments>http://www.pcexpert-blog.com/2009/10/php-due-metodi-semplici-e-veloci-per-leggere-un-file-xml.html#comments</comments>
		<pubDate>Wed, 14 Oct 2009 14:05:48 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[guida]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[linguaggi programmazione]]></category>
		<category><![CDATA[programmi]]></category>
		<category><![CDATA[Sistemi Operativi]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1206</guid>
		<description><![CDATA[<p></p>
<p>Direttamente dal blog di Guido Chiappucci ecco due metodi molto semplici per leggere un file xml.</p>
<p>Il primo metodo si basa sull&#8217;uso della libreria SimpleXML introdotta con la quinta</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/10/no-xml.jpg"><img class="aligncenter size-medium wp-image-1207" title="no-xml" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/10/no-xml-300x225.jpg" alt="no-xml" width="300" height="225" /></a></p>
<p>Direttamente dal blog di <a href="http://www.chiappucci.it/blog/">Guido Chiappucci</a> ecco due metodi molto semplici per leggere un file xml.</p>
<p>Il primo metodo si basa sull&#8217;uso della libreria SimpleXML introdotta con la quinta versione del linguaggio PHP.</p>
<p>Supponendo che il file xml da leggere sia il seguente:</p>
<pre lang="XML">
<?xml version="1.0"?>
<anagrafica>
<record>
<NOME><![CDATA[Mario]]&gt;</NOME>
<COGNOME><![CDATA[Bianchi]]&gt;</COGNOME>
</record>
<record>
<NOME><![CDATA[Paolo]]&gt;</NOME>
<COGNOME><![CDATA[Rossi]]&gt;</COGNOME>
</record>
</anagrafica>
</pre>
<p>Ecco le poche righe di codice da scrivere per avere pieno accesso ai dati:</p>
<pre lang="PHP">
<?php
$doc = simplexml_load_file("anagrafica.xml");
$anagrafica = $doc->record;
foreach($anagrafica as $dati){
    echo "Nome: ".$dati->NOME."\n";
    echo "Cognome: ".$dati->COGNOME."\n";
    echo "
<hr />\n";
}
?>
</pre>
<p>Il secondo metodo è invece più elaborato e consiste nel caricare in un array l&#8217;intero contenuto di un file xml.</p>
<pre lang="PHP">
<?php
function readXml($file){
$xml_parser = xml_parser_create();
if(!($fp = fopen($file, "r"))){ die("Impossibile aprire il file Xml"); }
$data = fread($fp, filesize($file)+1);
fclose($fp);
xml_parse_into_struct($xml_parser, $data, $vals, $index);
xml_parser_free($xml_parser);
return $vals;
}
?>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/10/php-due-metodi-semplici-e-veloci-per-leggere-un-file-xml.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Generare automaticamente una sequenza di numeri vincenti da giocare a Win for Life</title>
		<link>http://www.pcexpert-blog.com/2009/10/generare-automaticamente-una-sequenza-di-numeri-vincenti-da-giocare-a-win-for-life.html</link>
		<comments>http://www.pcexpert-blog.com/2009/10/generare-automaticamente-una-sequenza-di-numeri-vincenti-da-giocare-a-win-for-life.html#comments</comments>
		<pubDate>Mon, 12 Oct 2009 19:43:07 +0000</pubDate>
		<dc:creator>Paolo Smedile</dc:creator>
				<category><![CDATA[hack]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programmazione]]></category>
		<category><![CDATA[Senza categoria]]></category>
		<category><![CDATA[Sistemi Operativi]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[web]]></category>
		<category><![CDATA[free]]></category>
		<category><![CDATA[generator]]></category>
		<category><![CDATA[programmi]]></category>
		<category><![CDATA[winforlife]]></category>

		<guid isPermaLink="false">http://www.pcexpert-blog.com/?p=1196</guid>
		<description><![CDATA[<p></p>
<p>Per i pochi che ancora non lo conoscono, Win for Life è un nuovo gioco numerico ideato dalla nota Sisal il cui massimo premio è una rendita di 4.000</p>]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.pcexpert-blog.com/wp-content/uploads/2009/10/winforlife.gif"><img class="aligncenter size-medium wp-image-1197" title="winforlife" src="http://www.pcexpert-blog.com/wp-content/uploads/2009/10/winforlife-300x196.gif" alt="winforlife" width="300" height="196" /></a></p>
<p>Per i pochi che ancora non lo conoscono, Win for Life è un nuovo gioco numerico ideato dalla nota <a href="http://www.sisal.it/home/sisal_front_door_new/">Sisal</a> il cui massimo premio è una rendita di 4.000 euro al mese per 20 anni. Le estrazioni avvengono ogni giorno della settimana dalle 8:00 alle 20:00 per un totale di 8 estrazioni al giorno. Il 23% di ogni euro giocato servirà infine a finanziare la ricostruzione in Abruzzo.<br />
Il programma da me realizzato, scritto in php, ci consentirà di generare automaticamente una sequenza di numeri casuali da giocare al nuovo gioco che sta facendo impazzire milioni di Italiani. E&#8217; possibile anche selezionare la quantità di numeri da giocare che, ricordo, vanno da un minimo di 10 ad un massimo di 14. Ecco il link alla pagina web contente il Programma! <span style="font-size: medium;"><span><a href="http://www.pcexpert-blog.com/win4life/index.php"><span style="color: #ff0000;"><strong>Vai a Win4Life Numbers Generator!</strong></span></a></span></span></p>
]]></content:encoded>
			<wfw:commentRss>http://www.pcexpert-blog.com/2009/10/generare-automaticamente-una-sequenza-di-numeri-vincenti-da-giocare-a-win-for-life.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

