Salve, ho un piccolo problema. Scusate se sembra una cosa stupida, ma non so come risolvere. Ho da tempo un form mail, che dal mio sito, tramite un questionario, dovrebbe inviarmi la mail con il testo, dopo che una persona entra nella pagina e compila le voci. Ebbene, dopo aver compilato le voci, mi arriva la mail senza il testo, cioè arriva con solo l'elenco delle voci, ma senza ciò che han scritto gli utenti. Chi mi sa dire dove sbaglio. Avevo preso i codici da alcuni siti html php alcuni anni fa. E in passato funzionava.
Link
http://viaggidialex.altervista.org/a2/forum02.html
Codice pagina
Codice HTML:
<TABLE width="90%">
<tr>
<td>
<HR COLOR="GREEN" SIZE="4">
<div align=center><B><FONT Color="BLUE"><font face="Comic Sans MS"><BIG>Dai il tuo giudizio al mio sito, mi farebbe piacere...</BIG></FONT></FONT><br><FONT Color="BLUE"><SMALL>Ricorda che nessun campo è obbligatorio.</FONT></B></SMALL>
<br><br>
<table width="100%" border="0">
<FORM METHOD=POST ACTION="http://viaggidialex.altervista.org/script1/gc_formmail.php">
<INPUT TYPE="hidden" NAME="mailto" VALUE="viaggidialex@libero.it">
<INPUT TYPE="hidden" NAME="subject" VALUE="Messaggio dal forum">
<tr valign="top">
<table border=0 cellspacing=5 cellpadding=5>
<tr>
<td><font color="#660000">Nome e di dove sei:</font></td><td><input type=text name="il tuo nome" size=35 maxlength=40 value=""></td>
</tr><tr>
<td><font color="#660000">E-mail: </font></td><td><input type=text name="la tua email" size=35 maxlength=40 value=""></td>
</tr><tr>
<td valign=middle><font color="#660000">Inserisci<br>qui a lato <br>il tuo commento:</font></td>
<td><textarea name="commento" rows=4 cols=30></textarea></td></tr>
<tr><td><font color="#660000">Come sei arrivato/a su Viaggi di Alex:<br>Se altro, specificare:</font></td><td>
<SELECT NAME="come sei arrivato">
<OPTION SELECTED>Scegli l'opzione</OPTION>
<OPTION>Motore di ricerca</OPTION>
<OPTION>Banner</OPTION>
<OPTION>Link su altro sito</OPTION>
<OPTION>Guestbook</OPTION>
<OPTION>Casualmente</OPTION>
<OPTION>(Altro)</OPTION>
</SELECT>
<br>
<input type=text name="come" size=35 maxlength=40 value=" ">
</td>
</tr><tr>
<td><font color="#660000">Se vuoi....<br>puoi dirmi <br>come giudichi<br> questo sito:</font>
</td><td><hr width="50%" align="left"><font color="#006600">
<input type=radio name="giudizio" value="pessimo"> Pessimo<br>
<input type=radio name="giudizio" value="mediocre"> Mediocre<br>
<input type=radio name="giudizio" value="sufficiente"> Sufficiente<br>
<input type=radio name="giudizio" value="buono"> Buono<br>
<input type=radio name="giudizio" value="ottimo"> Ottimo<br>
<input type=radio name="giudizio" value="non saprei"> Non saprei </font><hr width="50%" align="left"></td></tr>
<tr><td><font color="#660000">Sempre se vuoi....<br>puoi dirmi<br>la tua età?</font>
</td><td><hr width="50%" align="left"><font color="#000066">
<input type=radio name="anni" value="6-15"> 6-15<br>
<input type=radio name="anni" value="16-25"> 16-25<br>
<input type=radio name="anni" value="26-35"> 26-35<br>
<input type=radio name="anni" value="36-45"> 36-45<br>
<input type=radio name="anni" value="46-55"> 46-55<br>
<input type=radio name="anni" value="oltre i 55"> oltre i 55<br></font><hr width="50%" align="left"></td></tr>
<tr><td></td><td><input type=submit value="Invia i Dati"><input type=reset value="Annulla"></td></tr>
</table></td>
</tr>
</table>
Poi codice pagina gc_formmail.php
Codice PHP:
<?
/**
* GC_Formmail 1.2
* Data creazione: 17/2/2005
* Data ultima modifica: 21/2/2005
* Author: Giuseppe Calbi <peppiniel@peppiniel.com>
* Website: [url]http://www.giuseppecalbi.com[/url]
*
* Licenza: l'utilizzo di questo script è gratuito. Sarei grato se inseriste un link a [url]http://www.giuseppecalbi.com[/url]
* o [url]http://www.giuseppecalbi.com/scripts[/url] in fondo alle pagine che utlizzano questo script, o in un'area credits o links del vostro sito
*
* Vi suggerisco di inserire nei form, per i quali userete questo script, in fondo alla pagina la riga:
* <? $act=1; include "gc_formmail.php"; ?>
* ricordandovi di dare alla pagina un'estensione .php e di inserire eventualmente l'url completo dello script nel caso in cui
* il form non si trovasse nella stessa cartella.
* In questo modo sarà possibile essere avvisati automaticamente di nuovi aggiornamenti rispetto alla versione corrente
**/
// Non toccare NULLA in questo file
include "config.php";
$version = "1.2";
if ($act == 1)
{
echo getCredits();
return;
}
$key = array ();
$val = array ();
$output = "";
$senderNames = array ($senderNames);
foreach($_POST as $chiave=>$valore)
{
// <Input type=qualunque name=chiave value=valore>
array_push ($key, $chiave);
array_push ($val, preg_replace("\\\\'", "'", $valore));
if (!empty($emailField))
{
if ($chiave == $emailField)
{
$emailMittente = $valore;
}
}
if (!empty($subjectField))
{
if ($chiave == $subjectField)
{
$subject = $valore;
}
}
if (!empty($senderNames))
{
for ($i = 0; $i < count ($senderNames); $i++)
{
if ($chiave == $senderNames[$i])
{
$nome .= $valore." ";
}
}
}
}
if (!empty($subject))
{
$oggetto .= " - ".$subject;
}
if ($html)
{
$output = getHtmlOutput ($key, $val);
$intestazioni = "MIME-Version: 1.0\r\n";
$intestazioni .= "Content-type: text/html; charset=iso-8859-1\r\n";
}
else
{
for ($i = 0; $i < count ($key); $i++)
{
$output .= $key[$i].": ".$val[$i]."\n";
}
$intestazioni = "";
}
if ( (!empty($emailMittente)) || (!empty($nome)) )
{
$intestazioni .= "From: ".$nome."<".$emailMittente."> \r\n";
}
else
{
$intestazioni .= "From: ".$mittente."\r\n";
}
if (!mail($destinatari, $oggetto, $output, $intestazioni))
{
echo "<br>".$messaggioErrore."<br><br><br>".getHtmlOutput($key, $val)."<br><br><br>".getCredits();
if (strlen($paginaErrore) < 5)
{
exit ();
}
else
{
echo "<META HTTP-EQUIV=Refresh CONTENT="10; URL=".$paginaErrore."">";
}
}
echo "<br>".$messaggioConferma."<br><br><br>".getHtmlOutput($key, $val)."<br><br><br>".getCredits();
if (strlen($paginaConferma) < 5)
{
exit ();
}
else
{
echo "<META HTTP-EQUIV=Refresh CONTENT="10; URL=".$paginaConferma."">";
}
function getHtmlOutput ($k, $v)
{
global $stripsHtml;
global $tagAllowed;
$return = "<center><div style="text-align: center">";
$return .= "<fieldset style="font-family: Verdana; font-size: 10pt; color: #008080; font-weight: bold; border: 3px double #F3C65C; background-color: #F4F5FF">";
$return .= "<legend align=center>Dati inseriti</legend>";
$return .= "<table border=0 cellpadding=3 style="border-collapse: collapse; font-family:Verdana; font-size:10pt; color:#4062EA" bordercolor=#111111 cellspacing=5>";
$return .= "<colgroup span=1 style="text-align:right; font-weight: bold; background-color: #DDE8FF"></colgroup>";
for ($i = 0; $i < count ($k); $i++)
{
$v[$i] = preg_replace ("\n", "<br>", $v[$i]);
if ($stripsHtml)
{
$v[$i] = strip_tags ($v[$i], $tagAllowed);
}
$return .= "<tr><td width="30%">".$k[$i].": </td><td>".$v[$i]."</td></tr>";
}
$return .= "</table></fieldset></div></center>";
return $return;
}
function getCredits ()
{
global $version;
$return = "<br><br><br><br><br><br><center>Viaggi di Alex</center>";
return $return;
}
/*
* To Do:
* - Limite inserimento ogni n secondi o n richieste al minuto
* - Messaggio di conferma al mittente. Più complicato, potrebbe essere hackerato e diventerebbe minaccia seria.
*/
/*
*
* Changelog:
* 1.2 (21/2/05)
* - Configuration file
* - Documentation
* - Other few changes
*
* 1.12 (19/2/05)
* - Removed backslash before char "'".
* - In html output and mail, \n becomes <br>
* - Possibility to strips (all or some) html tags from html ouput
* - Possibility to set some field names as Name and Email Address of mail received
* - Possibility to set a field as subject after that set in "$oggetto"
* - Button green/red to see updates
*
* 1.11 (18/2/05)
* - Added Html Email Format
*/
?>