<?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>php Archivi -</title>
	<atom:link href="https://simonetocco.it/tag/php-2/feed/" rel="self" type="application/rss+xml" />
	<link>https://simonetocco.it/tag/php-2/</link>
	<description></description>
	<lastBuildDate>Fri, 30 Oct 2020 21:52:35 +0000</lastBuildDate>
	<language>it-IT</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>

<image>
	<url>https://simonetocco.it/wp-content/uploads/2020/12/logoSimone-1-150x150.png</url>
	<title>php Archivi -</title>
	<link>https://simonetocco.it/tag/php-2/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Aggiornamento PHP obbligatorio wordpress aruba</title>
		<link>https://simonetocco.it/aggiornamento-php-obbligatorio-wordpress-aruba/</link>
					<comments>https://simonetocco.it/aggiornamento-php-obbligatorio-wordpress-aruba/#comments</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Fri, 30 Oct 2020 21:50:52 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[Aruba]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://simonetocco.it/?p=2045</guid>

					<description><![CDATA[<p>WordPress, nel corso degli anni, è diventato un CMS assai elaborato e all&#8217;avanguardia e, come tutti gli applicativi degni di rispetto, ha necessità di evolversi in continuazione per introdurre nuove funzionalità, migliorare la sicurezza o adeguarsi agli standard di linguaggio PHP con cui è scritto. Da qualche tempo, Wordress (anche con l&#8217;accoppiata Woocomerce), richiede un [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/aggiornamento-php-obbligatorio-wordpress-aruba/">Aggiornamento PHP obbligatorio wordpress aruba</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>WordPress, nel corso degli anni, è diventato un CMS assai elaborato e all&#8217;avanguardia e, come tutti gli applicativi degni di rispetto, ha necessità di evolversi in continuazione per introdurre nuove funzionalità, migliorare la sicurezza o adeguarsi agli standard di <strong>linguaggio PHP</strong> con cui è scritto.</p>



<p>Da qualche tempo, <strong>Wordress</strong> (anche con l&#8217;accoppiata <strong>Woocomerce</strong>), richiede un a<strong>ggiornamento PHP obbligatorio</strong> al fine di mantenere aggiornato il CMS ed essere pronti a recepire ulteriori sue versioni.</p>



<h2 class="wp-block-heading">Perchè Aggiornamento Obbligatorio?</h2>



<p>Il messaggio di <strong>Aggiornamento Obbligatorio</strong> viene mostrato a tutti gli utenti che dispongono di una <strong>versione PHP più datata</strong> e quindi non più supportata di aggiornamenti. Questa mancanza causa una grossa falla in termini di <strong>sicurezza</strong> (in quanto le falle di sicurezza delle precedenti versioni non vengono più sistemate) ed in termini di <strong>funzionalità</strong> (in quanto nelle versioni più recenti di PHP vengono introdotte alcune nuove funzionalità e spesso a sostituzione di altre che diventano obsolete quindi non più funzionali)</p>



<h2 class="wp-block-heading">Aggiornamento PHP WordPress su Aruba</h2>



<p>Molti dei possessori di siti web basati su WordPress, utilizzano <strong>Aruba</strong> come Hosting per ospitare il poprio portale ed è proprio a questo che dobbiamo rivolgerci per <strong>aggiornare PHP per WordPress su Aruba.</strong></p>



<p>Fare questa operazione è estremamente semplice e come tutti i cambiamenti alla struttura di WordPress, è fortemente consigliato farlo dopo aver effettuato un <strong>backup</strong> completo del sito.</p>



<ul class="wp-block-list"><li>Per prima cosa è necessario accedere al proprio <strong>pannello utente di aruba</strong> posto al link <strong><a href="https://admin.aruba.it" target="_blank" rel="noreferrer noopener">https://admin.aruba.it</a></strong></li><li>In questa schermata, bisognerà inserire le <strong>proprie credenziali Aruba</strong> e quindi accedere al proprio pannello di gestione del sito.</li><li>Successivamente andare sotto la voce <strong>Hosting Linux -> Strumenti e Impostazioni</strong> come riportato in foto:</li></ul>



<figure class="wp-block-image size-large"><img fetchpriority="high" decoding="async" width="1024" height="710" src="https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-1024x710.png" alt="Pannello Aruba per Gestione PHP" class="wp-image-2046" srcset="https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-1024x710.png 1024w, https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-300x208.png 300w, https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-768x533.png 768w, https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-1536x1066.png 1536w, https://simonetocco.it/wp-content/uploads/2020/10/Aggiornamento-Obbligatorio-PHP-ARUBA-2048x1421.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Bisogna quindi selezionare la funzione <strong>Scelta della Versione PHP</strong> come in foto</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="470" src="https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-1024x470.png" alt="Pannello Aruba Accesso a Scelta Versione PHP" class="wp-image-2049" srcset="https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-1024x470.png 1024w, https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-300x138.png 300w, https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-768x353.png 768w, https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-1536x706.png 1536w, https://simonetocco.it/wp-content/uploads/2020/10/VersionePHPAruba-1-2048x941.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Arrivati a questa schermata, è necessario selezionare<strong> una versione PHP più recente</strong> facendo clic sul campo preferito. Personalmente suggerisco di provare sempre la <strong>versione più alta</strong> (ad esempio in foto la 7.4) applicare le modifiche e accertarsi in seguito che il sito funzioni in tutti i suoi strumenti. Diversamente è possibile scegliere versioni più basse evitando di selezionare quelle con dicitura <strong>(non più supportato)</strong> </p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="722" src="https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-1024x722.png" alt="Pannello Aruba Versioni PHP Disponibili" class="wp-image-2050" srcset="https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-1024x722.png 1024w, https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-300x211.png 300w, https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-768x541.png 768w, https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-1536x1082.png 1536w, https://simonetocco.it/wp-content/uploads/2020/10/VersioniPHP-2048x1443.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>
<!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------><div class="wpcb_nothing_offset"></div>

<style>
    
    .wpcb_template_main_1{
        
        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     
        
    }
    
    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }
    
    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }
    
    .wpcb_template_main_1 .wpcb_box_content_container{
        
    }    
    
    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }
    
    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }
    
    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }
    
    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    
        
</style>


<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
    <div class="wpcb_box_all_content_container">
        <div class="wpcb_box_content_container">    
            <div class="wpcb_box_heading">
                <div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
            </div>            
            <div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>    
            <div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
        </div>    
    </div>
</div><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------><div class="wpcb-tracker" data-id="3639555" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div><p>L'articolo <a href="https://simonetocco.it/aggiornamento-php-obbligatorio-wordpress-aruba/">Aggiornamento PHP obbligatorio wordpress aruba</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/aggiornamento-php-obbligatorio-wordpress-aruba/feed/</wfw:commentRss>
			<slash:comments>2</slash:comments>
		
		
			</item>
		<item>
		<title>Backend WordPress Lento: il problema di PHP</title>
		<link>https://simonetocco.it/backend-wordpress-lento-il-problema-di-php/</link>
					<comments>https://simonetocco.it/backend-wordpress-lento-il-problema-di-php/#respond</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Thu, 22 Nov 2018 10:59:23 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[lento]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://simonetocco.it/?p=1914</guid>

					<description><![CDATA[<p>Spesso mi sono trovato a dover trattare siti web in WordPress cui pannello di amministrazione backend (e talvolta anche il frontend) risultava estremamente lento. Le ripercussioni di questa lentezza sono molte. Anzitutto si ha una notevole difficoltà nel gestire la piattaforma che può far spazientire e talvolta impedire l&#8217;operato saturando le risorse (soprattutto la CPU [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/backend-wordpress-lento-il-problema-di-php/">Backend WordPress Lento: il problema di PHP</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Spesso mi sono trovato a dover trattare siti web in WordPress cui pannello di amministrazione backend (e talvolta anche il frontend) risultava estremamente lento.</p>
<p>Le ripercussioni di questa lentezza sono molte. Anzitutto si ha una notevole difficoltà nel gestire la piattaforma che può far spazientire e talvolta impedire l&#8217;operato saturando le risorse (soprattutto la CPU del server) facendoci uscire un bel errore 500 di Apache sul nostro Browser.</p>
<p>Altra grave ripercussione è che quando la lentezza riguarda anche il front end i motori di ricerca avranno un giudizio negativo sul nostro sito abbassando il posizionamento nei risultati di ricerca.</p>
<p>Sul web ci sono moltissime soluzioni o guide per velocizzare wordpress ma oggi voglio trattare una problematica meno trattata ma che spesso si rivela essere la principale: la versione di PHP su cui il nostro WordPress gira.</p>
<h2>Il problema della Versione PHP per WordPress.</h2>
<p>Molto spesso quando si ha un hosting condiviso la versione del linguaggio PHP installata sul server può risultare vecchia o addirittura obsoleta. Questo succede perchè i provider di servizi tendono ad utilizzare le versioni di PHP che sono &#8220;stabili&#8221; finchè qualcuno non si lamenta. Mi capita molte volte infatti, di vedere hosting o server dedicati che utilizzano la versione 5.2 di PHP. Vedendo però la documentazione di WordPress sul loro <a href="https://it.wordpress.org/about/requirements/">sito ufficiale</a> ci si rende conto che tra i prerequisiti richiesti vengono menzionate versioni di PHP decisamente superiori. Nel momento in cui scrivo, la release di PHP suggerita è infatti la 7.2. Sempre nella stessa documentazione, viene sconsigliato l&#8217;utilizzo di versioni precedenti in quanto, ovviamente, espongono il sito web a falle di sicurezza anche se non menziona le ripercussioni in termini di velocità. Questo perchè il parametro non riguarda direttamente i core di WordPress ma i plugin o i temi che andremo ad installare e che sono scritto utilizzando nuove sintassi o strumenti forniti dalle più recenti versioni di PHP.</p>
<p>&nbsp;</p>
<h2>Verificare versione PHP WordPress</h2>
<p>Per scongiurare questo problema, la prima cosa da fare è vedere la versione di PHP su cui il nostro wordpress sta girando. Per verificare la versione di PHP installata, si può procedere in 3 modi:</p>
<p><strong>Metodo Facile:</strong> su wordpress è possibile installare il plugin <a href="https://it.wordpress.org/plugins/display-php-version/">&#8220;Display PHP Version&#8221;</a> il quale andrà semplicemente ad aggiungere una stringa sul footer del nostro backend WordPress informandoci della versione attualmente utilizzata dal nostro Server.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1915" src="https://simonetocco.it/wp-content/uploads/2018/11/phpversionWordpress.jpg" alt="" width="800" height="312" srcset="https://simonetocco.it/wp-content/uploads/2018/11/phpversionWordpress.jpg 800w, https://simonetocco.it/wp-content/uploads/2018/11/phpversionWordpress-300x117.jpg 300w, https://simonetocco.it/wp-content/uploads/2018/11/phpversionWordpress-768x300.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /></p>
<p><strong>Metodo Medio:</strong> E&#8217; possibile accedere al pannello di amministrazione del nostro provider visualizzando la versione PHP installata. Nelle due immagini sottostanti sono visualizzate queste informazioni su un cPanel e su un pannello di amministrazione di Aruba.</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1916" src="https://simonetocco.it/wp-content/uploads/2018/11/cpanlephpversion.jpg" alt="" width="800" height="268" srcset="https://simonetocco.it/wp-content/uploads/2018/11/cpanlephpversion.jpg 800w, https://simonetocco.it/wp-content/uploads/2018/11/cpanlephpversion-300x101.jpg 300w, https://simonetocco.it/wp-content/uploads/2018/11/cpanlephpversion-768x257.jpg 768w" sizes="(max-width: 800px) 100vw, 800px" /><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1917" src="https://simonetocco.it/wp-content/uploads/2018/11/arubaPHPVersion.jpg" alt="" width="477" height="400" srcset="https://simonetocco.it/wp-content/uploads/2018/11/arubaPHPVersion.jpg 477w, https://simonetocco.it/wp-content/uploads/2018/11/arubaPHPVersion-300x252.jpg 300w" sizes="(max-width: 477px) 100vw, 477px" /></p>
<p><strong>Metodo Difficile (si fa per scherzare <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" /> :</strong> è possibile creare un file denominato versionePHP.php, scriverci dentro la seguente porzione di codice:</p>
<p><code>&lt;?php phpinfo() ;</code></p>
<p>e caricarla nella cartella FTP principale del sito eseguendo poi lo script andando sull&#8217;indirizzo www.tuosito.xyz/versionePHP.php</p>
<p>&nbsp;</p>
<h2>Scelta della Versione PHP per WordPress</h2>
<p>Per scegliere la versione PHP più idonea del nostro WordPress dobbiamo accedere al backend di amministrazione e nella bacheca principale, a fondo pagina, troviamo la versione di WordPress utilizzata con una stringa tipo:</p>
<p><code>Versione 4.9.8</code></p>
<p>Ovviamente il sconsiglio spassionato è quello di mantenere wordpress e i plugin installati alla versione più recente in modo da ridurre le criticità di sicurezza. Nel caso in cui quindi stiamo utilizzando una versione vecchia di wordpress, procediamo al suo aggiornamento (dopo aver fatto un bel backup di file e database).</p>
<p>Ci rechiamo quindi nella documentazione ufficiale di WordPress estrapolando la versione di PHP consigliata relativa alla nostra versione del CMS:</p>
<p><img loading="lazy" decoding="async" class="aligncenter size-full wp-image-1918" src="https://simonetocco.it/wp-content/uploads/2018/11/requisitiphpwordpress.jpg" alt="" width="455" height="400" srcset="https://simonetocco.it/wp-content/uploads/2018/11/requisitiphpwordpress.jpg 455w, https://simonetocco.it/wp-content/uploads/2018/11/requisitiphpwordpress-300x264.jpg 300w" sizes="(max-width: 455px) 100vw, 455px" /></p>
<h2>Cambiare o Aggiornare versione PHP WordPress.</h2>
<p>Il prossimo step è quindi quello di aggiornare la versione PHP di WordPress. Le immagini successive mostrano come  questa operazione può essere effettuata su cPanel o su pannello di Amministrazione Aruba:</p>
<h3>Versione cPanel</h3>
<p class="responsive-video-wrap clr"><iframe title="Cambiare versione PHP cPanel" width="1200" height="900" src="https://www.youtube.com/embed/D4W3gKqwjDQ?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></p>
<p>&nbsp;</p>
<h3>Versione Aruba</h3>
<p class="responsive-video-wrap clr"><iframe title="WordPress: gestire la versione di PHP su Aruba (shared)" width="1200" height="675" src="https://www.youtube.com/embed/3xguYQ4PfgQ?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<h2>Miglior Plugin Per Velocizzare WordPress</h2>
<p>potresti anche essere interessato a velocizzare il tuo Worpdress basandoti su altri accorgimenti indipendenti dalla versione PHP. In tal caso di consiglio la lettura di <a href="https://simonetocco.it/miglior-plugin-per-velocizzare-wordpress/">questo articolo</a><!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639557" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/backend-wordpress-lento-il-problema-di-php/">Backend WordPress Lento: il problema di PHP</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/backend-wordpress-lento-il-problema-di-php/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Inserire Shortcode in PHP &#8211; Funzione WordPress</title>
		<link>https://simonetocco.it/inserire-shortcode-in-php-funzione-wordpress/</link>
					<comments>https://simonetocco.it/inserire-shortcode-in-php-funzione-wordpress/#respond</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Thu, 15 Nov 2018 16:20:29 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Pillole]]></category>
		<category><![CDATA[Wordpress]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[shortcode]]></category>
		<category><![CDATA[wordpress]]></category>
		<guid isPermaLink="false">https://simonetocco.it/?p=1893</guid>

					<description><![CDATA[<p>Agli amanti di WordPress sarà capitato di aver necessità di inserire shortcode in php per personalizzare un tema o creare una nuova funzionalità. Il framework di WordPress mette a disposizione anche questa funzione molto semplice da utilizzare: &#60;?php echo do_shortcode("[ShortcodeQui]"); ?&#62; Questa funzione avrà come risultato di stampare a video il risultato dello shortcode utilizzato. [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/inserire-shortcode-in-php-funzione-wordpress/">Inserire Shortcode in PHP &#8211; Funzione WordPress</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Agli amanti di WordPress sarà capitato di aver necessità di inserire shortcode in php per personalizzare un tema o creare una nuova funzionalità. Il framework di WordPress mette a disposizione anche questa funzione molto semplice da utilizzare:</p>
<p><code>&lt;?php echo do_shortcode("[ShortcodeQui]"); ?&gt;</code></p>
<p>Questa funzione avrà come risultato di stampare a video il risultato dello shortcode utilizzato.</p>
<p>&nbsp;</p>
<p>La funzione è pubblicata sulla documentazione ufficiale <a href="https://codex.wordpress.org/it:Riferimento_funzioni/do_shortcode">QUI</a><!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639559" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/inserire-shortcode-in-php-funzione-wordpress/">Inserire Shortcode in PHP &#8211; Funzione WordPress</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/inserire-shortcode-in-php-funzione-wordpress/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Codice PHP Download File: forzare il download per scaricare un file</title>
		<link>https://simonetocco.it/codice-php-download-file-forzare-il-download-per-scaricare-un-file/</link>
					<comments>https://simonetocco.it/codice-php-download-file-forzare-il-download-per-scaricare-un-file/#respond</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Fri, 26 Oct 2018 10:58:41 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Pillole]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">https://simonetocco.it/?p=1807</guid>

					<description><![CDATA[<p>Realizzando una Web Application in linguaggio PHP, può essere necessario abilitare una funzione che consente di forzare il download per scaricare un file. Il Codice PHP per il download di file è molto semplice ma in rete si trovano diversi codici che spesso non funzionano o generano dei file corrotti quindi non apribili. Inserisco quindi [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/codice-php-download-file-forzare-il-download-per-scaricare-un-file/">Codice PHP Download File: forzare il download per scaricare un file</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Realizzando una Web Application in linguaggio PHP, può essere necessario abilitare una funzione che consente di <strong>forzare il download</strong> per scaricare un file. Il <strong>Codice PHP per il download di file</strong> è molto semplice ma in rete si trovano diversi codici che spesso non funzionano o generano dei file corrotti quindi non apribili.</p>
<p>Inserisco quindi un codice testato e funzionante per il download di un file .ZIP o PDF o JPEG o JPG. Per altre tipologie di file, sarà sufficiente modificare la tipologia di file da scaricare:</p>
<p>&nbsp;</p>
<p><code>$file_name = "nomefile.zip";<br />
if( !is_file($file_name) )<br />
exit();<br />
if(ini_get('zlib.output_compression'))<br />
ini_set('zlib.output_compression', 'Off');<br />
switch(strtolower(substr(strrchr($file_name,'.'),1)))<br />
{<br />
case 'pdf': $mime = 'application/pdf'; break;<br />
case 'zip': $mime = 'application/zip'; break;<br />
case 'jpeg':<br />
case 'jpg': $mime = 'image/jpg'; break;<br />
default: exit();<br />
}<br />
header('Pragma: public');<br />
header('Expires: 0');<br />
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');<br />
header('Last-Modified: '.gmdate ('D, d M Y H:i:s', filemtime ($file_name)).' GMT');<br />
header('Cache-Control: private',false);<br />
header('Content-Type: '.$mime);<br />
header('Content-Disposition: attachment; filename="'.basename($file_name).'"');<br />
header('Content-Transfer-Encoding: binary');<br />
header('Content-Length: '.filesize($file_name));<br />
header('Connection: close');<br />
ob_clean();<br />
readfile($file_name);</code><!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639561" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/codice-php-download-file-forzare-il-download-per-scaricare-un-file/">Codice PHP Download File: forzare il download per scaricare un file</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/codice-php-download-file-forzare-il-download-per-scaricare-un-file/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Abilitare ZipArchive in PHP su Hosting Condiviso Aruba</title>
		<link>https://simonetocco.it/abilitare-ziparchive-in-php-su-hosting-condiviso-aruba/</link>
					<comments>https://simonetocco.it/abilitare-ziparchive-in-php-su-hosting-condiviso-aruba/#comments</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Fri, 03 Apr 2015 08:22:43 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[Aruba]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[ZipArchive]]></category>
		<guid isPermaLink="false">http://simonetocco.it/?p=1098</guid>

					<description><![CDATA[<p>Se stiamo realizzando, modificando o utilizzando una web application basata su PHP, potrà tornarci utile o obbligatorio abilitare l&#8217;estensione ZipArchive su Hosting Condiviso Aruba. ZipArchive è l&#8217;estensione che consente ad uno script PHP di generare o estrarre archivi ZIP. &#160; Abilitare ZipArchive su Aruba Aruba di default non abilita ZipArchive per le soluzioni Hosting Condivisi [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/abilitare-ziparchive-in-php-su-hosting-condiviso-aruba/">Abilitare ZipArchive in PHP su Hosting Condiviso Aruba</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Se stiamo realizzando, modificando o utilizzando una web application basata su PHP, potrà tornarci utile o obbligatorio abilitare l&#8217;estensione ZipArchive su Hosting Condiviso Aruba.</p>
<p>ZipArchive è l&#8217;estensione che consente ad uno script PHP di generare o estrarre archivi ZIP.</p>
<p>&nbsp;</p>
<p><strong>Abilitare ZipArchive su Aruba</strong></p>
<p>Aruba di default non abilita ZipArchive per le soluzioni Hosting Condivisi per ovvie ragioni di sicurezza. E&#8217; possibile però abilitare questa funzione in modo permanente o per il solo tempo necessario per eseguire un&#8217;operazione. Ho quindi preparato un video esplicativo.</p>
<p class="responsive-video-wrap clr"><iframe title="Abilitare ZipArchive mod PHP.ini su Aruba" width="1200" height="675" src="https://www.youtube.com/embed/JowWMrRLg54?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></p>
<p>&nbsp;<!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639563" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/abilitare-ziparchive-in-php-su-hosting-condiviso-aruba/">Abilitare ZipArchive in PHP su Hosting Condiviso Aruba</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/abilitare-ziparchive-in-php-su-hosting-condiviso-aruba/feed/</wfw:commentRss>
			<slash:comments>11</slash:comments>
		
		
			</item>
		<item>
		<title>Analizzatore Log Mail su Server</title>
		<link>https://simonetocco.it/analizzatore-log-mail-su-server/</link>
					<comments>https://simonetocco.it/analizzatore-log-mail-su-server/#respond</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Sat, 07 Feb 2015 17:21:46 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Sicurezza]]></category>
		<category><![CDATA[hacking mail]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[server]]></category>
		<guid isPermaLink="false">http://simonetocco.it/?p=893</guid>

					<description><![CDATA[<p>Uno degli attacchi hackers più frecquenti, riguardandi hosting o server, sono quelli in cui viene caricato all&#8217;interno di una delle cartelle del sito o della web application, un file scritto in diversi linguaggi che è in grado di inviare email spamm mentendo in serio pericolo l&#8217;usabilità del sito ma soprattutto rendendoci responsabili di eventuali azioni [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/analizzatore-log-mail-su-server/">Analizzatore Log Mail su Server</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Uno degli attacchi hackers più frecquenti, riguardandi hosting o server, sono quelli in cui viene caricato all&#8217;interno di una delle cartelle del sito o della web application, un file scritto in diversi linguaggi che è in grado di inviare email spamm mentendo in serio pericolo l&#8217;usabilità del sito ma soprattutto rendendoci responsabili di eventuali azioni legali.</p>
<p>Molte volte capita che su un solo server siano ospitati più siti e che quindi sia molto difficile trovare il file &#8220;infetto&#8221; che genera il traffico di spamm.</p>
<p>Con PHP 5.3 viene introdotta un&#8217;importante novità ovvero, è possibile specificare quale file può fungere da log mail e quindi memorizzare gli estremi di ogni email mandata dal nostro server. Utilizzando questa funzione, per ogni email inviata, troveremo il corrispondente file che l&#8217;ha generata consentendoci quindi di eliminarlo e successivamente di correre ai ripari cercando di trovare la falla che ha consentito la scrittura dello stesso.</p>
<p>Basta quindi editare il file php.ini e specificare le variabili alle righe:<br />
<code>mail.add_x_header = On<br />
mail.log = /var/log/phpmail.log</code><br />
La prima riga aggiunge al log mail X-Header Addizionali dandoci informazioni sul processo e sul nome e percorso del file che ha generato la mail.</p>
<p>La seconda riga specifica in quale file queste informazioni debbano essere inserite.</p>
<p>Nel caso in esempio, sarà quindi necessario creare un file phpmail.log nel persorso /var/log/phpmail.log e renderlo scrivibile dal processo di PHP</p>
<p>Per ogni email che partirà dal nostro server, avremo una linea di log simile a quella sottostante:</p>
<div>
<div id="highlighter_617126" class="syntaxhighlighter  bash">
<table border="0" cellspacing="0" cellpadding="0">
<tbody>
<tr>
<td class="gutter">
<div class="line number1 index0 alt2">1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2"><code class="bash plain">mail() on [</code><code class="bash plain">/var/www/miosito</code><code class="bash plain">.com</code><code class="bash plain">/httpdocs/pages/formmail</code><code class="bash plain">.php:50]: To: info@miosito.com -- Headers: From: </code><code class="bash string">"John Brown Smith: "</code> <code class="bash plain">&lt;jsb@miosito.com&gt;</code></div>
</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<p>Facile capire il percorso che ha generato la mail e apporre le dovute soluzioni.<!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639565" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/analizzatore-log-mail-su-server/">Analizzatore Log Mail su Server</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/analizzatore-log-mail-su-server/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Storable Random Password</title>
		<link>https://simonetocco.it/storable-random-password/</link>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Thu, 02 May 2013 10:58:34 +0000</pubDate>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[generate]]></category>
		<category><![CDATA[password]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[random]]></category>
		<guid isPermaLink="false">http://www.draco-corporation.com/?p=746</guid>

					<description><![CDATA[<p>Problemi con la sicurezza delle tue applicazioni? Contattaci! Utile per molte applicazioni e per i processi di login, gli algoritmi in grado di generare password casuale sono molto utili al fine di generare credenziali di autenticazione o verificare un processo di corrispondenza di un indirizzo mail con un account. Un occhio di riguardo è sempre [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/storable-random-password/">Storable Random Password</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Problemi con la sicurezza delle tue applicazioni? <a title="Contatti Draco" href="http://www.draco-corporation.com/contatti">Contattaci!</a></strong></p>
<p>Utile per molte applicazioni e per i processi di login, gli algoritmi in grado di generare password casuale sono molto utili al fine di generare credenziali di autenticazione o verificare un processo di corrispondenza di un indirizzo mail con un account. Un occhio di riguardo è sempre rivolto alla sicurezza che le password devono mantenere per proteggere tutto ciò che sta oltre il loro utilizzo. Inutile dire quindi che la miglior password utilizzabile è quella formata dall&#8217;unione di lettere maiuscole e minuscole, numeri e caratteri speciali per una lunghezza di almeno 8 caratteri.</p>
<p>Trattando di software rivolti ad un pubblico di vario genere, non sempre utilizzare la password più efficiente è la risposta giusta in quanto difficilmente memorizzabile e quindi conservata in mail, fogliettini o altri dispositivi non protetti.</p>
<p>Per ottenere un buon connubio tra sicurezza e semplicità d&#8217;uso è necessario poter generare password casuali che presentino una facilità di lettura, quindi di memorizzazione, data dallo pseudo utilizzo di costrutti grammaticali. Unendo infatti suffissi, prefissi, vocali prese una sola volta e consonanti ripetute secondo regole grammaticali, si può ottenere una password sicuramente insensata ma facile da ricordare.</p>
<p>Di seguito presentiamo un breve algoritmo scritto in PHP che restituisce una password casuale facile da ricordare o come spesso chiamate le SRP Storable Random Password.</p>
<p>La funzione può essere personalizzata in fase di chiamata aumentando/diminuendo il numero di sillabe da utilizzare e introducendo o meno i caratteri e la quantità numerica nonché l&#8217;utilizzo dei prefissi grammaticali:</p>
<pre lang="php">  public function gen_mem_password($syllables = 3, $use_prefix = false, $use_numbers = true,$quantity_numbers=2){
            // Define function unless it is already exists
    if (!function_exists('ae_arr'))
    {
        // This function returns random array element
        function ae_arr(&amp;$arr)
        {
            return $arr[rand(0, sizeof($arr)-1)];
        }
    }

    // italian prefix
    $prefix = array('an',       'ana',      'ante',     'anti',     'arci',
                    'avan',     'bis',      'circom',   'cis',      'con',
                    'contra',   'contro',   'de',       'di',       'dis',
                    'eu',       'extra',    'fra',      'in',       'infra', 
                    'inter',    'intra',    'iper',     'ipo',      'luxta',    
                    'meta',     'ob',       'oltre',    'post',     'pre',      
                    'pro',      're',       'sin',      'sopra',    'sotto',    
                    'stra',     'sub',      'super',    'sur',      'tra', 
                    'trans');

    // italian suffix
    $suffix = array('accio',    'aggine',   'aggio',    'aglia',    'aio',
                    'anza',     'astro',    'ata',      'ato',      'enza',
                    'eria',     'esco',     'etto',     'ezza',     'erla', 
                    'etto',     'ezza',     'fero',     'iere',     'ino',
                    'ismo',     'ista',     'mento',    'oide',     'one', 
                    'ota',      'oto',      'otto',     'tore',     'uccio',
                    'ucolo',    'zione',    'ale',      'ario',     'ese', 
                    'evole',    'issimo',   'oso',      'oto',      'mente',
                    'archia',   'filla',    'logia',    'mania',    'teca',
                    'iatra',    'scopia'); 

    //vowel sounds 
    $vowels     = array('a', 'o', 'e', 'i', 'u', 'ou'); 

    //sound consonants 
    $consonants = array( 'r', 't', 'p', 's', 'd', 'f', 'g', 'h', 'l', 'z','c', 'v', 'b', 'n', 'm','qu');
    //numbers
    $numbers    = array('1','2','3','4','5','6','7','8','9','0');

    $password           = $use_prefix?ae_arr($prefix):'';
    $password_suffix    = ae_arr($suffix);

    for($i=0; $i&lt;$syllables; $i++)
    {
        //random consonant
        $doubles    = array('n', 'm', 't', 's','r','c','d','p','f','g','l','z','v');
        $c          = ae_arr($consonants);
        if (in_array($c, $doubles)&amp;&amp;($i!=0))
            if (rand(0, 2) == 1) 
                $c .= $c;
        
        $password .= $c;

        //random vowel
        $password .= ae_arr($vowels);

        if ($i == $syllables - 1) 
            if (in_array($password_suffix[0], $vowels))
                $password .= ae_arr($consonants);

    }

    // selecting random suffix
    $password .= $password_suffix;

    if($quantity_numbers&gt;=0 &amp;&amp; $use_numbers)
	for($j=0; $j&lt;$quantity_numbers; $j++)
	 	$password .= ae_arr($numbers);
	
    

    return $password;
        
    }
</pre>
<p><!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639567" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/storable-random-password/">Storable Random Password</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Filtro Zend o PHP per nomi propri di persona</title>
		<link>https://simonetocco.it/filtro-zend-o-php-per-nomi-propri-di-persona/</link>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Sat, 27 Apr 2013 09:18:43 +0000</pubDate>
				<category><![CDATA[Zend Framework]]></category>
		<category><![CDATA[nomi propri]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[zend framework]]></category>
		<guid isPermaLink="false">http://www.draco-corporation.com/?p=734</guid>

					<description><![CDATA[<p>Problemi con Zend Framework o php? Contattaci! Riportiamo di seguito un utile filtro scritto in PHP e predisposto all&#8217;uso con Zend Framework per filtrare una stringa e renderla grammaticalmente corretta alle regole che afferiscono ai nomi propri di persona nella grammatica Italiana. /** * Zend Framework * * LICENSE * * This source file is [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/filtro-zend-o-php-per-nomi-propri-di-persona/">Filtro Zend o PHP per nomi propri di persona</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><strong>Problemi con Zend Framework o php? <a title="Contatti Draco" href="http://www.draco-corporation.com/contatti">Contattaci!</a></strong></p>
<p>Riportiamo di seguito un utile filtro scritto in PHP e predisposto all&#8217;uso con Zend Framework per filtrare una stringa e renderla grammaticalmente corretta alle regole che afferiscono ai nomi propri di persona nella grammatica Italiana.</p>
<pre lang="php">/**
 * Zend Framework
 *
 * LICENSE
 *
 * This source file is subject to the new BSD license that is bundled
 * with this package in the file LICENSE.txt.
 * It is also available through the world-wide-web at this URL:
 * http://framework.zend.com/license/new-bsd
 * If you did not receive a copy of the license and are unable to
 * obtain it through the world-wide-web, please send an email
 * to license@zend.com so we can send you a copy immediately.
 *
 * @category   Zend
 * @package    Zend_Filter
 * @copyright  Draco Corporation (http://www.draco-corporation.com)
 * @license    Draco Corporation (http://www.draco-corporation.com)
 * @version    PersonName.php 1 2013-04-25 11:17
 * @author     Draco Corporation (http://www.draco-corporation.com)
 */

/**
 * @see Zend_Filter_Interface
 */
require_once 'Zend/Filter/Interface.php';
/**
 * @see Zend_Locale
 */
require_once 'Zend/Locale.php';

/**
 * @category   Zend
 * @package    Zend_Filter
 * @copyright  Draco Corporation (http://www.draco-corporation.com)
 * @license    Draco Corporation (http://www.draco-corporation.com)
 */
class Zend_Filter_PersonName implements Zend_Filter_Interface
{
   
    /**
     * Defined by Zend_Filter_Interface
     *
     * returns the name of the person with the first letter capitalized
     *
     * @param  string $value
     * @return string
     */
    public function filter($value)
    {
        

        //reduces all characters enlarging only the first character of each word
        $value = ucwords(strtolower($value));
        
        //If the name is an accent is enlarged after the first letter of this
        $value = preg_replace('/'(w+)/e', "'''.ucfirst('$1')", $value);

      
        return $value;
    }
}
</pre>
<p><!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639569" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/filtro-zend-o-php-per-nomi-propri-di-persona/">Filtro Zend o PHP per nomi propri di persona</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Includere HTML in HTML</title>
		<link>https://simonetocco.it/includere-html-in-html/</link>
					<comments>https://simonetocco.it/includere-html-in-html/#respond</comments>
		
		<dc:creator><![CDATA[Simone Tocco]]></dc:creator>
		<pubDate>Wed, 25 Apr 2012 09:47:09 +0000</pubDate>
				<category><![CDATA[HTML]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[html]]></category>
		<category><![CDATA[iframe]]></category>
		<category><![CDATA[includere]]></category>
		<category><![CDATA[php]]></category>
		<guid isPermaLink="false">http://www.draco-corporation.com/?p=384</guid>

					<description><![CDATA[<p>In un nostro recente lavoro ci è stato richiesto il collegamento ad una porzione di html da un sito esterno. Solitamente questo tipo di estensione viene effettuata utilizzando la tecnologia fornita dagli Iframe che, sostanzialmente, concede sul nostro sito l&#8217;apertura di una finestra (delle dimensioni volute) che si affaccia sul sito esterno. Il problema di [&#8230;]</p>
<p>L'articolo <a href="https://simonetocco.it/includere-html-in-html/">Includere HTML in HTML</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>In un nostro recente lavoro ci è stato richiesto il collegamento ad una porzione di html da un sito esterno. Solitamente questo tipo di estensione viene effettuata utilizzando la tecnologia fornita dagli Iframe che, sostanzialmente, concede sul nostro sito l&#8217;apertura di una finestra (delle dimensioni volute) che si affaccia sul sito esterno. Il problema di questa tecnica è la gestione html del sito incluso. </p>
<p>Quando non siamo i proprietari del sito esterno diventa difficile, se non impossibile, gestire le funzioni del codice. Nel nostro caso specifico dovevamo includere il codice HTML da un sito, cercando di carpirne una serie di news, e ri-pubblicarle sul nostro sito. </p>
<p>Utilizzando gli Iframe abbiamo ottenuto un buon risultato ma, cliccando sui collegamenti ipertestuali, questi si aprivano all&#8217;interno della stessa finestra Iframe, rendendo impossibile la consultazione. L&#8217;unica soluzione possibile è stata la cattura dell&#8217;intero codice HTML utilizzato e, effettuando parsing riga dopo riga, siamo riusciti non solo a catturare la porzione di codice interessata, ma anche a modificarla introducendo, ad esempio, il target _blank agli url delle notizie, per evitare la dispersione dei nostri utenti.</p>
<p>Ad esempio, se volessimo includere la porzione di codice presente sul sito www . sitodaincludere . yyy:</p>
<pre lang="html5" line="1">
<ul>
	<li>
            <img decoding="async" src="/images/arrow_red.png" alt="" /> 
            <a href="/news/notizia1.htm"><strong>News1</strong></a>
        </li>
	<li>
            <img decoding="async" src="/images/arrow_red.png" alt="" /> 
            <a href="/news/notizia2.htm"><strong>News2</strong></a>
        </li>
</ul>
</pre>
<p>In tal caso dobbiamo includere una lista di elementi che possiedono immagini e collegamenti ipertestuali, riferiti con path relativo, quindi non utilizzabili dal nostro sito. Vediamo ora il codice PHP utilizzato per scaricare la pagina, parserizzare e stampare a video la porzione di codice che ci interessa, sostituendo le parti da settare in base al nostro sito:</p>
<pre lang="php" line="1">
<?php
//scarichiamo la pagina html da includere
$file = file('http://www.sitodaincludere.yyy:');
$bool=false;

//scorriamo l'intera pagina html
foreach ($file as $r){
  //Non appena troviamo l'inizio del codice che ci interessa settiamo una variabile di controllo
  if(eregi('<ul>',$r)){
	$bool=true;
        $codice=$codice.$r
  }
 
  //Fin tanto che la variabile di controllo è vera
  if($bool){
        //Sostituiamo nella riga corrente, i path relativi con quelli assoluti
        $r=eregi_replace("/images/arrow_red.png", "http://www.sitodaincludere.yyy/images/arrow_red.png", $r);
        $r=eregi_replace("<a href='/news/","<a target='_blank' href='http://www.sitodaincludere.yyy/news/",$r);

        //memorizziamo la stringa ottenuta
        $codice=$codice.$r;

        //Quanto arriviamo alla fine del codice che ci interessa
	if(eregi('</ul>',$r)){
           $codice=$codice.$r;
           //Settiamo a false la variabile di controllo
	   $bool=false;
	}		
    }

}

//Stampiamo a video il risultato ottenuto
echo $codice;

?>
</pre>
<p>Includendo questo script PHP nel punto preciso della nostra pagina otterremo:</p>
<pre lang="html5" line="1">
<ul>
	<li>
            <img decoding="async" src="http://www.sitodaincludere.yyy/images/arrow_red.png" alt="" /> 
            <a target='_blank' href="http://www.sitodaincludere.yyy/news/notizia1.htm"><strong>News1</strong></a>
        </li>
	<li>
            <img decoding="async" src="http://www.sitodaincludere.yyy/images/arrow_red.png" alt="" /> 
            <a target='_blank' href="http://www.sitodaincludere.yyy/news/notizia2.htm"><strong>News2</strong></a>
        </li>
</ul>
</pre>
<p>Buona programmazione a tutti!<!--------------------------------------><!-- Conversion Box Made Using : -------><!-- WP Conversion Boxes - -------------><!-- http://wpconversionboxes.com --><!--------------------------------------></p>
<div class="wpcb_nothing_offset"></div>
<style>
<p>    .wpcb_template_main_1{</p>
<p>        background-color: #0faf97;
        width: 100%;
        height: ;
        border-width: ;
        border-color: ;
        margin-top: ;
        margin-bottom: ;
        margin-left: ;
        margin-right: ;
        padding: 20px;
        -webkit-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        -moz-box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);
        box-shadow: inset 0px 0px 200px -38px rgba(0,0,0,0.5);     </p>
<p>    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading{
        background-color: ;
        padding-top: 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_heading_text{
        font-family:    'Arial', serif;
        font-size:      32px;
        line-height:    38px;
        color:          #ffffff;
        text-align:     center;
        text-shadow: 0px 3px 4px rgba(0, 0, 0, 0.25);
        font-weight: 900;
        margin: 0;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_content_container{</p>
<p>    }    </p>
<p>    .wpcb_template_main_1 .wpcb_box_content{
        font-family:    Arial;
        font-size:      20px;
        line-height:    24px;
        color:          #ffffff;
        text-align:     center;
        padding: 20px 0px;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div{
        text-align: center;
    }</p>
<p>    .wpcb_template_main_1 .wpcb_box_button_div a.wpcb_box_button, .wpcb_template_main_1 .wpcb_box_button_div button.wpcb_box_button{
        font-family:    Arial;
        font-size:      16px;
        color:          #fff;
        background-color: #4f78f2;
        border-radius: 30px;
        width: ;
        padding: 10px 15px;
    }</p>
<p>    .wpcb_button_gradient{background-image : -moz-linear-gradient(top, #4f78f2, #1851f9);background-image : -ms-linear-gradient(top, #4f78f2, #1851f9);background-image : -webkit-gradient(linear, #4f78f2, #1851f9);background-image : -webkit-linear-gradient(top, #4f78f2, #1851f9);background-image : -o-linear-gradient(top, #4f78f2, #1851f9);background-image : linear-gradient(top, #4f78f2, #1851f9);filter : progid:DXImageTransform.Microsoft.gradient(startColorstr=&quot;#4f78f2&quot;, endColorstr=&quot;#1851f9&quot;, GradientType=0);border-color : +#4f78f2 #1851f9 #1851f9;background-color : #4f78f2;}    </p>
</style>
<div class="wpcb_template_main wpcb_template_main_1 wpcb_nothing wpcb_nothing" data-fadetime="0">
<div class="wpcb_box_all_content_container">
<div class="wpcb_box_content_container">
<div class="wpcb_box_heading">
<div class="wpcb_box_heading_text">Hai bisogno di una consulenza o assistenza?</div>
</p></div>
<div class="wpcb_box_content">
                Apri un ticket di richiesta, ti risponderò in brevissimo tempo! Chiedere non costa nulla <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />            </div>
<div class="wpcb_box_button_div">
                <a href="http://simonetocco.it/assistenza-e-consulenza/" target="" id="wpcb_box_button_1" class="wpcb_box_button wpcb_button_gradient">Apri Richiesta</a>
            </div>
</p></div>
</p></div>
</div>
<p><!------------------------------><!-- Conversion Box Ends Here --><!------------------------------></p>
<div class="wpcb-tracker" data-id="3639571" data-boxid="1" data-visitedpage="https://simonetocco.it:443/tag/php-2/feed/" data-visittype="visit"></div>
<p>L'articolo <a href="https://simonetocco.it/includere-html-in-html/">Includere HTML in HTML</a> sembra essere il primo su <a href="https://simonetocco.it"></a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://simonetocco.it/includere-html-in-html/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
