Heb een scriptje welke de inhoud van mijn contactformulier naar mijn email adres stuurt. Als het scriptje gevuld wordt met characters uit de western-europe character set, gaat het goed, maar zo gauw als ik het scriptje gebruik om cyrillic characters naar mijn email adres te versturen gaat het fout, en krijg ik rubbish toe ge-emailed..
Het scriptje ziet er als volgt uit:
Ik maak in zowel mijn html paginaas, als in dit script dus gebruik van utf-8, en het weergeven en laten invoeren van cyrillic schrift werkt op de webpagina uitstekend, alleen de cyrillic schrift ontvangen characters zijn onleesbaar.
Dit gebeurt zowel in Firefox, als Chrome en in IE, ik heb dus het idee dat het niet zozeer een script error is, maar meer een verkeerde instelling (voor het weergeven van cyrillic characters) is bij mijn webserver-provider.
Als ik in Google zoek, dan komt er ook steeds naar voren dat Ajax standaard al in utf-8 werkt, dus zou het toe moeten voegen van de utf-8 strings in header en ook bij htmlentities niet nodig moeten zijn, het wel of niet gebruiken hiervan maakt ook totaal geen verschil.
Kan dit mijn vermoeden dat dit aan een instelling bij mijn hosting-provider ligt versterken?
Het scriptje ziet er als volgt uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
| $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=UTF-8\n"; $headers .= "Content-Transfer-Encoding: 7bit\n"; $name = $_POST['name']; // contain name of person $email = $_POST['email']; // Email address of sender $web = $_POST['web']; // Your website URL // $body = $_POST['text']; // Your message $body = htmlentities($_POST['text'], ENT_QUOTES, "UTF-8"); $receiver = "tester@testplekje.nl" ; // hardcorde your email address here - This is the email address that all your feedbacks will be sent to if (!empty($name) & !empty($email) && !empty($body)) { $body = "Name:{$name}\n\nWebsite :{$web}\n\nComments:{$body}"; $send = mail($receiver, 'Contact Form Submission', $body, "From: {$email}"); if ($send) { echo 'true'; //if everything is ok,always return true , else ajax submission won't work } } |
Ik maak in zowel mijn html paginaas, als in dit script dus gebruik van utf-8, en het weergeven en laten invoeren van cyrillic schrift werkt op de webpagina uitstekend, alleen de cyrillic schrift ontvangen characters zijn onleesbaar.
Dit gebeurt zowel in Firefox, als Chrome en in IE, ik heb dus het idee dat het niet zozeer een script error is, maar meer een verkeerde instelling (voor het weergeven van cyrillic characters) is bij mijn webserver-provider.
Als ik in Google zoek, dan komt er ook steeds naar voren dat Ajax standaard al in utf-8 werkt, dus zou het toe moeten voegen van de utf-8 strings in header en ook bij htmlentities niet nodig moeten zijn, het wel of niet gebruiken hiervan maakt ook totaal geen verschil.
Kan dit mijn vermoeden dat dit aan een instelling bij mijn hosting-provider ligt versterken?
[ Voor 0% gewijzigd door RobIII op 26-04-2011 21:08 . Reden: Code tags toegevoegd ]