Un saluto a tutti. Da giorni sto cercando di risolvere un problema fastidioso, riguardante le lettere accentate nel form email. La causa da quanto ho capito è il charset, visto che il mio sito utilizza l'utf-8. Modificandolo in ISO-8859-1 questo inconveniente si risolve, ma sballa la codifica del testo della pagina sostituendo i caratteri speciali con strani simboli. Spero che qualcuno di voi mi possa aiutare, perchè non so proprio come fare. Vi posto il codice del file "send.php"
<?PHP
/*Impostazioni e controllo campi*/
$ip = $_POST['ip'];
$httpref = $_POST['httpref'];
$httpagent = $_POST['httpagent'];
$nome = $_POST['nome'];
$cognome = $_POST['cognome'];
$url = $_POST['url'];
$mail = $_POST['mail'];
$testo = $_POST['testo'];
$oggetto = $_POST['oggetto'];
session_start();
$utente = $_POST['captcha'];
$validato = $_SESSION['veri'];
if(empty($nome) || empty($cognome) || empty($mail) || empty($testo)) {
echo "<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>Compila tutti i campi del form</h2>\n";
die ("<h2 class='t_center'>Torna indietro!</h2>");
}
if(!$mail == "" && (!strstr($mail,"@") || !strstr($mail,".")))
{
echo "<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>Inserisci un'email valida!</h2>\n";
$badinput = "<h2 class='t_center'>Messaggio non inviato!</h2>\n";
echo $badinput;
die ("<h2 class='t_center'>Torna indietro!!</h2>");
}
if (eregi('Seleziona', $oggetto)) {
die ("<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>Seleziona il motivo del contatto!</h2>");
}
if(!$url == "" && (!strstr($url,"h t t p : / /")))
{
echo "<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>Inserisci un url valido completo di h t t p :/ /!</h2>\n";
$badinput = "<h2 class='t_center'>Messaggio non inviato!</h2>\n";
echo $badinput;
die ("<h2 class='t_center'>Torna indietro!!</h2>");
}
if (eregi('http:', $testo)) {
die ("<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>E' vietato inserire url nel campo messaggio!</h2>");
}
if($utente == $validato){
}else{
$badinput = "<img src='layout/not_send.jpg' width='48' height='48' alt='Errore' class='image_display' /><h2 class='t_center'>Codice di verifica non corretto o non inserito!</h2>\n";
echo $badinput;
die ("<h2 class='t_center'>Torna indietro!</h2>");
}
$todayis = date("d, m, Y, g:i a") ;
$oggetto = $oggetto;
$subject = $oggetto;
$testo = stripcslashes($testo);
/*Impostazioni messaggio amministratore*/
$da = "From: $mail\r\n";
$message = "Data contatto: $todayis \n
Da: $nome ($mail)\n
Cognome: $cognome \n
Url: $url \n
Messaggio: $testo \n
Informazioni addizionali: IP = $ip \n
Browser Info: $httpagent \n
Referral: $httpref \n";
mail("[email protected]", $subject, $message, $da, $url);
/*Impostazioni messaggio pubblico*/
$dal_sito = "From: [email protected]\r\n";
mail("$mail\n","Conferma: messaggio inviato!","Gentile $nome, lo staff di miosito.com, risponderà alla tua richiesta nel più breve tempo possibile.
Un saluto! Lo Staff di miosito.com", $dal_sito);
?>
<img src="layout/ok.jpg" width="48" height="48" alt="Inviato!" class="image_display" /><h2 class="t_center">
Grazie per averci contattato: <?PHP echo $nome ?><br />
Un'email di notifica è stata inviata all'indirizzo: <em>"<?PHP echo $mail ?>".</em></h2>
<p class="t_center"><a href="contattaci.php">Torna indietro</a></p>
```Vi ringrazio in anticipo!