Ragazzi, ho un problema con la funzione mail
se in un form vengono inseriti caratteri particolari nella email arrivano simboli strani
qualcuno può aiutarmi?
Esempio
è à ù = è Ã_ ù
Ragazzi, ho un problema con la funzione mail
se in un form vengono inseriti caratteri particolari nella email arrivano simboli strani
qualcuno può aiutarmi?
Esempio
è à ù = è Ã_ ù
Nessuno sa aiutarmi?
In pratica non ho problemi, gli utenti riescono a scambiarsi le mail, l'unico problema e che alcuni caratteri speciali, come ù,à,è vengono interpretati dal loro gestore di posta come simboli strani ecco come è la parte di codice che invia email.
Codice PHP:
$intestazioni ="From: Pincopallino <pinco@pallino.it>\r\n";
$corpo=$_POST['corpo'];
$oggetto=$_POST['oggetto'];
$destinatario=$_POST['destinatario'];
mail($destinatario, $oggetto, $corpo, $intestazioni);
Penso sia un problema di encoding della pagina (email).
Fai attenzione, quando costruisci l'email in php, di specificare
Content-transfer-encoding: 8BIT\n
o altri metodi di encoding compatibili.
Ciao,
Gabriele.
Gabriele Fabbri
http://www.overzero.it
Allora, a dire la verità ho provato anche cambiando l'intestazione ma non sembra succedere nulla, cavoletti che rabbia!help me!
Codice PHP:
$intestazioni = "MIME-Version: 1.0\n"."Content-Type: text/plain; charset=CHARSET\n"."Content-Transfer-Encoding: 8bit\n";
$intestazioni .="From: Pincopallino <pinco@pallino.it>\r\n";
$corpo=$_POST['corpo'];
$oggetto=$_POST['oggetto'];
$destinatario=$_POST['destinatario'];
mail($destinatario, $oggetto, $corpo, $intestazioni);
Ma la mail è in text-plain volutamente?
Se vuoi inviarla in html usa questa intestazione:
$body_top = "--Message-Boundary\n";
$body_top .= "Content-type: text/html; charset=iso-8859-1\n";
$body_top .= "Content-transfer-encoding: 8BIT\n";
$body_top .= "Content-description: Mail message body\n\n";
Gabriele Fabbri
http://www.overzero.it
Ho provato come mi hai suggerito, scrivendo in questo modo
ma il risultato (via email) è stato questo:Codice PHP:
$intestazioni = "--Message-Boundary\n";
$intestazioni .= "Content-type: text/html; charset=iso-8859-1\n";
$intestazioni .= "Content-transfer-encoding: 8BIT\n";
$intestazioni .= "Content-description: Mail message body\n\n";
$intestazioni .="From: Pincopallino <pinco@pallino.it>\r\n";
$corpo=$_POST['corpo'];
$oggetto=$_POST['oggetto'];
$destinatario=$_POST['destinatario'];
mail($destinatario, $oggetto, $corpo, $intestazioni);
--Message-Boundary
Content-type: text/html; charset=iso-8859-1
Content-transfer-encoding: 8BIT
Content-description: Mail message body
From: Pincopallino <pinco@pallino.it>
Test Ã_ è ù
e come mittente: d4ng3rus@eufut.org ?!?!?