<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Warning: Cannot modify header information]]></title><description><![CDATA[<p dir="auto">Ciao a tutti, sono niubbi. Ho un problema che non so risolvere e ho notato un paio di post che ne parlano ma non ho capito come procedere, vorrei chiedere aiuto a voi:</p>
<p dir="auto">Uso per il Guestbook lo script "Advanced Guestbook".<br />
Tutto funziona ad eccezzione del file comment.php (che mi permette di aggiungere un commento ad una firma lasciata da un utente).</p>
<p dir="auto">Se lascio il file comment.php inalterato allora il problema non si pone, ma se lo modifico per integrarlo al layout del sito allora compare questo errore:</p>
<p dir="auto"><strong>Warning: Cannot modify header information - headers already sent by (output started at D:\Web\xampp\htdocs\<a href="http://uniposca4.it" rel="nofollow ugc">uniposca4.it</a>\guestbook\comment.php:8) in D:\Web\xampp\htdocs\<a href="http://uniposca4.it" rel="nofollow ugc">uniposca4.it</a>\guestbook\lib\comment.class.php on line 219</strong></p>
<p dir="auto">Leggendo e cercando con Google ho capito che quando questo problema si presenta spesso è solo perchè prima del carattere <strong>&lt;?php</strong> ci sono degli spazi o altri caratteri.</p>
<p dir="auto">In effetti io ho modificato il file per integrarlo nel sito e ho la necessità di spostare il codice del file in mezzo al documento, non posso lasciarlo all'inizio altrimenti non viene visualizzato dove vorrei.</p>
<p dir="auto">La cosa che mi lascia perplesso è che in un secondo sito in cui uso lo stesso script il problema non c'è. Eppure anche nel secondo sito il file è stato modificato e il codice dello script non si trova ad inizio file ma nel mezzo.</p>
<p dir="auto">Quindi nel mio sito ho l'errore, nell'altro invece no.<br />
Non so dove sbattere la testa, spero qualcuno mi possa dare una mano, ecco il codice del file comment.php che mi dà l'errore:</p>
<p dir="auto">[php]<br />
&lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "<a href="http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" rel="nofollow ugc">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd</a>"&gt;<br />
&lt;html xmlns="<a href="http://www.w3.org/1999/xhtml" rel="nofollow ugc">http://www.w3.org/1999/xhtml</a>" xml:lang="en" lang="en"&gt;<br />
&lt;head&gt;<br />
&lt;meta http-equiv="content-type" content="text/html;charset=iso-8859-1"&gt;<br />
&lt;meta name="generator" content="Adobe GoLive 6"&gt;<br />
&lt;title&gt;Guestbook » uniposca.it&lt;/title&gt;<br />
&lt;link rel="stylesheet" href="../styles/uniposca.css" type="text/css" &gt;<br />
&lt;script type="text/javascript" src="../script/global.js?v=364"&gt;&lt;/script&gt;<br />
&lt;script type="text/javascript" src="../script/menu.js?v=364"&gt;&lt;/script&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;</p>
<p dir="auto">&lt;!-- codice HTMl del sito --&gt;</p>
<p dir="auto">&lt;!-- script guestbook --&gt;<br />
&lt;?php<br />
$include_path = dirname(<strong>FILE</strong>);<br />
require_once $include_path."/admin/config.inc.php";<br />
require_once $include_path."/lib/$DB_CLASS";<br />
require_once $include_path."/lib/image.class.php";<br />
require_once $include_path."/lib/template.class.php";<br />
require_once $include_path."/lib/vars.class.php";<br />
require_once $include_path."/lib/comment.class.php";<br />
require_once $include_path."/lib/phrase.class.php";</p>
<p dir="auto">$gb_com = new gb_comment($include_path);<br />
$gb_com-&gt;id = (isset($_GET["gb_id"])) ? $_GET["gb_id"] : '';<br />
$gb_com-&gt;id = (isset($_POST["gb_id"])) ? $_POST["gb_id"] : $gb_com-&gt;id;<br />
$gb_com-&gt;id = intval($gb_com-&gt;id);<br />
$gb_com-&gt;comment = (isset($_POST["comment"])) ? $_POST["comment"] : '';<br />
$gb_com-&gt;user = (isset($_POST["gb_user"])) ? $_POST["gb_user"] : '';<br />
$gb_com-&gt;pass_comment = (isset($_POST["pass_comment"])) ? $_POST["pass_comment"] : '';<br />
$gb_com-&gt;gb_captcha = (isset($_POST["gb_captcha"])) ? $_POST["gb_captcha"] : '';<br />
$gb_com-&gt;token = (isset($_POST["gb_token"])) ? $_POST["gb_token"] : '';<br />
$gb_action = (isset($_POST["gb_comment"])) ? $_POST["gb_comment"] : '';<br />
$gb_com-&gt;comment_action($gb_action);</p>
<p dir="auto">?&gt;<br />
&lt;!-- /script guestbook --&gt;</p>
<p dir="auto">&lt;!-- altro codice HTMl del sito --&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br />
[/php]</p>
]]></description><link>https://connect.gt/topic/54674/warning-cannot-modify-header-information</link><generator>RSS for Node</generator><lastBuildDate>Sat, 18 Apr 2026 19:36:20 GMT</lastBuildDate><atom:link href="https://connect.gt/topic/54674.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 23 Nov 2007 18:07:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Warning: Cannot modify header information on Sun, 12 Oct 2008 10:14:35 GMT]]></title><description><![CDATA[<p dir="auto">ci ho messo un po di tempo ma alla fine ho trovato una soluzione nel blog di un amico (bigthink).</p>
<p dir="auto">allora ho messo:</p>
<pre><code>
&lt;?php ob_start(); ?&gt;

</code></pre>
<p dir="auto">in cima al file, come prima riga. poi ho messo:</p>
<pre><code> ob_end_flush(); 
</code></pre>
<p dir="auto">come ultima istruzione del codice dello script. per capirci se il codice originale era composto da 10 righe, ho messo questa come undicesima e prima del TAG di chiusura php ?&gt;</p>
<p dir="auto">Adesso non mi da piu il problema in questione e lo script funziona in modo ottimale.<br />
Grazie dell'aiuto, ciao</p>
]]></description><link>https://connect.gt/post/641886</link><guid isPermaLink="true">https://connect.gt/post/641886</guid><dc:creator><![CDATA[sark]]></dc:creator><pubDate>Sun, 12 Oct 2008 10:14:35 GMT</pubDate></item><item><title><![CDATA[Reply to Warning: Cannot modify header information on Thu, 29 Nov 2007 22:51:55 GMT]]></title><description><![CDATA[<p dir="auto">Ciao Ceccus, grazie delle info. Dunque:</p>
<p dir="auto">Ho provato per prima cosa la soluzione 2) perchè mi sembrava la più rapida e indolore. In effetti adesso l'errore non lo da piu però lo script non completa la sua funzione.<br />
Cioè: il file comment.php permette di scrivere un commento, quando tale commento è stato scritto e si è premuto il tasto submit, lo script dovrebbe inserire il commento nel database e richiamare quindi il file index.php (cioè il file che mostra tutte le firme e i commenti.)<br />
Se applico la soluzione del punto 2) non mi da nessun errore però lo script non mi rimanda al file index.php e rimane invece in una pagina bianca.<br />
Il commento viene inserito, quindi il database viene aggiornato correttamente ma non avviene il redirect.</p>
<p dir="auto">Il punto 1) non l'ho provato perchè non ho capito come fare. Sono troppo niubbi e se puoi dovresti spiegarmelo in modo ancora piu facile.</p>
<p dir="auto">Rimane il mistero del fatto che lo stesso scritp, modificato piu o meno nello stesso modo, non mi da nessun problema sul sito della mia ragazza.</p>
<p dir="auto">ciao grazie.</p>
]]></description><link>https://connect.gt/post/641884</link><guid isPermaLink="true">https://connect.gt/post/641884</guid><dc:creator><![CDATA[sark]]></dc:creator><pubDate>Thu, 29 Nov 2007 22:51:55 GMT</pubDate></item><item><title><![CDATA[Reply to Warning: Cannot modify header information on Sat, 24 Nov 2007 14:58:15 GMT]]></title><description><![CDATA[<p dir="auto">Ciao <em><strong>Sark</strong></em> e benvenuto sul forum GT,<br />
in php ci sono delle funzioni che ti consentono di manipolare l'header html, una sorta di <em>codice nascosto</em> che sta in testa ad ogni pagina html. Quando scrivi una pagina html/php questo header viene formato ed inviato prima del primissimo carattere di outoput (sia esso uno spazio o il tag &lt;head&gt; o quello che vuoi) pertanto se successivamente tenti di modificarlo, ottieni il messaggio d'errore che hai indicato.</p>
<p dir="auto">Nel tuo caso, tutto quello che c'è prima della stringa <strong>&lt;?php</strong> è output e costituisce il tuo problema.</p>
<p dir="auto">Da quanto hai postato non è possibile capire dove venga modificato l'header né perché (è in tutti quegli include...) pertanto ti posso dare due tipi di soluzioni, la prima più <em>pulita ed istruttiva</em> e la seconda più <em>sporca e veloce</em>...</p>
<ol>
<li>
<p dir="auto">Salva tutto l'htm che precede <em>&lt;?php</em> in una variabile tipo $testo, quindi vai a cercare il primo output (un echo o un print) del codice php e subito prima metti <em><strong>echo $testo</strong></em>.</p>
</li>
<li>
<p dir="auto">Nella riga seguente <em><strong>&lt;?php</strong></em> metti<br />
<em><strong>error_reporting (E_ERROR);</strong></em></p>
</li>
</ol>
<p dir="auto">che è un comando per dire a php di mostrare solo gli errori e non gli warning: quindi in questo caso il messaggio non lo vedresti più ma il problema rimarrebbe lì (la modifica degli header non funziona e non sai quando potrebbe intervenire...)</p>
<p dir="auto">Facci sapere come risolvi e quale strada scegli di percorrere! <img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/android/1f604.png?v=4as8rolt52f" class="not-responsive emoji emoji-android emoji--smile" title=":D" alt="😄" /><br />
<img src="https://connect.gt/plugins/nodebb-plugin-emoji/emoji/customizations/54a3bffb-5e4a-4eb8-81dc-99b2072e5d05-175.gif?v=4as8rolt52f" class="not-responsive emoji emoji-customizations emoji--ciauz" title=":ciauz:" alt=":ciauz:" /></p>
]]></description><link>https://connect.gt/post/641883</link><guid isPermaLink="true">https://connect.gt/post/641883</guid><dc:creator><![CDATA[ceccus]]></dc:creator><pubDate>Sat, 24 Nov 2007 14:58:15 GMT</pubDate></item></channel></rss>