Originariamente inviato da wako
per 13manuel84:

Ne ero a conoscenza sul fatto che gli header vanno spediti prima di qualsiasi output, infatti non c'è nessun print o echo. Se pensi che il problema sia la funzione mail, nel case "5" dovrebbe andare poichè è la sola azione scritta.
questi sono output:

<html>
<title> Risultato </title>
<body>

uno spazio bianco è output.
L'output non lo devi intendere come semplice risultato di un echo...


puoi risolvere, se vuoi usare solo codice php, mettendo all'inizio del tuo script (ma proprio all'inizio, prima dell'apertura dell'html) questa semplice riga:

codice:
<? ob_start(); ?>
la funzione ob_start ti bufferizza l'output, quindi non fa altro che catturarti tutto l'output e rilasciarlo alla fine dopo aver spedito gli eventuali header. Lo so che l'ho spiegato un pò malino, quindi ti consiglio di leggere quello che dice il manuale a riguardo: http://it2.php.net/manual/it/function.ob-start.php oppure di fare una ricerca su questo forum.