之间不同的使用PHP邮件功能通过电子邮件发送形式时,我有一个问题。这是我使用的代码:PHP邮件:特殊字符显示Firefox和IE
$name = $_POST['name'];
$last_name = $_POST['last_name'];
$company = $_POST['company'];
$email = $_POST['email'];
$country = $_POST['country'];
$phone = $_POST['phone'];
$message = $_POST['message']); //This comes from the form
$formcontent="Name: $name $last_name <br> Company: $company <br> Email: $email <br> Country: $country <br> Telephone: $phone <br><br> Message: $message";
$mailheader = 'MIME-Version: 1.0' . "\r\n";
$mailheader .= 'Content-type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable' . "\r\n";
$mailheader .= 'From: ' . $email . "\r\n";
mail("[email protected]", "subject", $formcontent, $mailheader) or die("Error!");
这是将要发送的西班牙和特殊字符,如N,口音形式,c等...
的问题是,如果我这样使用它,它在Firefox 3.6.3中可以正常工作,但是在Internet Explorer 8中使用表单时,发送的特殊字符会全部混乱(如ç而不是ç)。但是,如果我添加函数utf8_encode在$ formcontent的变量,那么它在IE浏览器,但它停止工作在Firefox中显示类似于η而不是C的东西。
我能做些什么,使无论是浏览器的工作?任何帮助将非常感激!
编辑:
我发现,如果我邮件发送之前呼应$ formcontent变量,如果我使用的是Firefox,特殊字符已经混乱的。我怎样才能避免浏览器干扰正在发送的内容?请我现在完全无能为力!我不知道该怎么改变才能有所作为。即使这是一个愚蠢的版本,是否有任何其他的PHP邮件在两个浏览器中使用特殊字符?
你的意思是“Internet Explorer”? – 2011-05-13 16:46:31
是啊,当然 – 2011-05-13 16:54:25