Norveç karakterler

4 Cevap php

Benim iletişim formunu aşağıdaki php var.

// Ensure a message was entered, then sanitize it
if(!empty($_POST['cf_m']) && $_POST['cf_m']!='Enter Your Message Here')
{
	$message = strip_tags($_POST['cf_m']);
}

Ben e-posta yoluyla bir mesaj alırsanız, Norveççe karakterler, A, O ve AE ¥ olur, Ã ¸ Ã |

Doğru karakterleri göstermek için ben ne yapabilirim?

4 Cevap

Bunu posta üzerinde php-yorum () açıklandığı bulunuyor gibi, posta başlığında kodlama ayarlamak (http://de.php.net/manual/de/function.mail.php) gerekir:

<?php
function mail_utf8($to, $subject = '(No subject)', $message = '', $from) {
  $header = 'MIME-Version: 1.0' . "\n" . 'Content-type: text/plain; charset=UTF-8'
    . "\n" . 'From: Yourname <' . $from . ">\n";
  mail($to, '=?UTF-8?B?'.base64_encode($subject).'?=', $message, $header);
}
?>

Bu form UTF-8 olarak servis edilir görünür, ancak e-posta ISO-8859-1 (veya başka bir çeşidi) olarak gönderilir. Açıkça Örneğin, Content-type başlığını ayarlayarak gönderilen e-postaların karakter kodlamasını ayarlamak isteyebilirsiniz:

Content-type: text/plain; charset=UTF-8

Bunu gerçekleştirmek için PHP mail() function $additional_headers parametresini ayarlayın.

Ben onları doğru göstermek için utf8_decode function kullanabilirsiniz böylece bu karakterleri UTF8 kodlanmış olduğunu düşünüyorum

Kodunuzu boyunca UTF-8 kullanın. Benim için, this page çok yardımcı oldu.