überfuzzMedlem sedan apr. 2006434 inlägg
Jag har ett formulär som låter användaren skicka iväg ett mejl till en bestämd @dress. Allt verkar frid och fröjd. Det verkar som att alla headers kommer med, men åäö funkar inte. Det i sin tur får mig att misstänka min $headers = 'Content-type: text/html; charset=utf-8\r\n'; Är det något fel på den?
if(!$error)
{
$msg = "Name: \t $name \r\n";
$msg = "E-mail: \t $email \r\n";
$msg = "Message: \n $message \r\n";
$headers = "MIME-Version: 1.0\r\n";
$headers = 'Content-type: text/html; charset=utf-8\r\n';
$headers = "X-Priority: 1\r\n";
$headers = "X-MSMail-Priority: High\r\n";
$headers = "X-Mailer: php\r\n";
$headers = "From: $name <$email>\r\n";
$headers = "Reply-to: $name <$email>\r\n";
$headers = "Return-path: $name <$email>\r\n";
mail($to, $subject ,stripslashes($msg), $headers);
}
GunnarDMedlem sedan juni 20014 250 inlägg
Eftersom du anger att mailet är utf8 format så får du också se till så att åäö är i utf8 format.
Titta på denna functionen: http://se.php.net/manual/en/function.utf8-encode.php
überfuzzMedlem sedan apr. 2006434 inlägg
Mhmm, kan jag köra utf8_encode ( ) på strängarna jag skickar med $avs $meddelande osv ? Jag är inte så bra på php att jag intuitivt vet hur lösningen ska se ut. Är följande ok om jag i <form> har en <input> jag döpt till text.
$text = $_POST['text'];
$text = utf8_encode ($text);
Har $text formen utf8 nu? Vidare hur kan jag kontrollera mina variablers encoding?
überfuzzMedlem sedan apr. 2006434 inlägg
Jag har kommit en liten bit på vägen, men nu körde jag fast igen.
Jag får $subject från input name="subject" I samband med att jag plockar ut den till $subject gör jag följande:
$subject = $_POST['subject'];
mb_convert_encoding($subject, "UTF-8", "auto");
echo mb_detect_encoding($subject);
echo blir UTF-8, men jag får ändå konstiga krumilurer i stället för åäö som skickas med formtomail funktionen.