相关疑难解决方法(0)

电子邮件主题中断间距中的重音词 - 如何停止此操作?

我们有一个自定义的php电子邮件营销应用程序,还有一个有趣的问题:如果邮件的主题行包含带重音的单词,它会"吞下"它与下一个单词之间的空格.一个例子:短语

ÁngelRíosescuchay sorprende

显示(至少通过gmail和lotus notes)

ÁngelRíosescuchay sorprende

消息源中的特定行显示:

Subject: =?ISO-8859-1?Q?=C1ngel?= =?ISO-8859-1?Q?R=EDos?= escucha y sorprende

(半满标头):

Delivered-To: me@gmail.com
Received: {elided}
Return-Path: <return@path>
Received: {elided}
Received: (qmail 23734 invoked by uid 48); 18 Aug 2009 13:51:14 -0000
Date: 18 Aug 2009 13:51:14 -0000
To: "Adriano" <me@gmail.com>
Subject: =?ISO-8859-1?Q?=C1ngel?= =?ISO-8859-1?Q?R=EDos?= escucha y sorprende
MIME-Version: 1.0
From: {elided}
X-Mailer: PHP
X-Lista: 1290
X-ID: 48163
Content-Type: text/html; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Message-ID: <kokrte.rpq06m@example.com>
Run Code Online (Sandbox Code Playgroud)

编辑:

该应用程序使用旧版本的Html Mime Mail来准备消息,我将尝试升级到更新的版本.无论如何,这是编码主题的函数:

/**
 * Function to encode a header if necessary …
Run Code Online (Sandbox Code Playgroud)

php email character-encoding email-headers

7
推荐指数
1
解决办法
3559
查看次数

在 php 邮件中发送希伯来语主题是克林贡语......?

我正在尝试发送带有希伯来语内容/主题的电子邮件,如下所示:

$to = 'email@email.com';
$subject = "???? ??? ??? ????"; 
$message = '??? ??? ???';

$headers = 'From: email@email.com' . "\r\n";
$headers .= 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to, $subject, $message, $headers);
Run Code Online (Sandbox Code Playgroud)

但是我在这个主题中得到的更多是克林贡语而不是现代希伯来语。消息本身很好,只是主题搞砸了。

我能做什么?(我对你的任何黑客攻击持开放态度)

php email character-encoding email-headers

5
推荐指数
1
解决办法
2461
查看次数

Zend_Mail中的UTF-8发件人名称?

我正在使用Zend_Mail并想要自定义发件人名称.

我希望发件人姓名是FooBar爱你Ryan(其中'Ryan'被收件人姓名取代,爱你被收件人的语言替换为'loves'的翻译,就像CD Baby一样).

我试过base64_encodemb_encode_mimeheader()以及其他类似的东西:

mb_internal_encoding('UTF-8');
mb_http_output('UTF-8');
iconv_set_encoding("input_encoding", 'UTF-8');
iconv_set_encoding("output_encoding", 'UTF-8');
iconv_set_encoding("internal_encoding", 'UTF-8'); 
header('Content-Type:text/html; charset=' . 'UTF-8');
Run Code Online (Sandbox Code Playgroud)

它生成此作为发件人: '=?UTF-8?B?RXh0cmFidXjniLHkvaByY3dhbHNoQGV4dHJhYnV4LmNvbQ==?= <email@example.com>'

然后它出现在我的Gmail中(unknown sender).

有任何想法吗?

php zend-framework utf-8 zend-mail

5
推荐指数
1
解决办法
1360
查看次数

使用PHP的电子邮件标头的UTF-8字符编码

我正在尝试将→(右箭头&rarr;或unicode 2192 hex)编码为电子邮件主题行.

当我使用php时,当我使用mb_encode_mimeheader()Thunderbird或Gmail做同样的事情时,我会得到不同的价值.但是当php生成的电子邮件到达时,角色没有正确显示.此外,PHP mb_decode_mimeheader()可以处理PHP的输出,但不能解码来自其他电子邮件源的内容.

通过十六进制转储,我已经确定了箭头的UTF-8表示

<?php
$rarr = "\xe2\x86\x92";

mb_encode_mimeheader($rarr, 'UTF-8'); //     =?UTF-8?B?w6LChsKS?=
// whereas Tbird and Gmail produce:          =?UTF-8?B?4oaS?=
// and more manually:
'=?UTF-8?B?' . base64_encode($rarr).'?='; // =?UTF-8?B?4oaS?=
Run Code Online (Sandbox Code Playgroud)

PHP的编码在Thunderbird和Gmail中出现为:â

我对PHP的行为感到困惑,因为它似乎没有产生标准结果.

如何让PHP编码UTF-8电子邮件头值,以便邮件客户端正确解码?

php mime character-encoding

4
推荐指数
1
解决办法
3241
查看次数

PHPMailer 的阿拉伯语问题

我正在使用 PHPMailer 并尝试发送带有阿拉伯语文本的电子邮件,它正在发送空主题,我可以在我的收件箱中看到“(无主题)”

我正在使用以下内容:

HTML代码

<form action="mail.php" method="post">
<input type="text" name="subject" />
<input type="submit" value="Send" />
</form>
Run Code Online (Sandbox Code Playgroud)

PHP 代码 (mail.php)

$subject = $_POST["subject"];
    $mailer = new PHPMailer();
            $mailer->CharSet = 'UTF-8';
            $mailer->IsSMTP();
            $mailer->SMTPDebug = 1;
            $mailer->SMTPAuth = true;



            // Prepare Message  
            $mailer->Subject = ($subject);
            $emails = 0;
Run Code Online (Sandbox Code Playgroud)

帮助将不胜感激:)

php encoding phpmailer

3
推荐指数
1
解决办法
3580
查看次数

PHPMailer:阿拉伯语(非英语)字符的主题名称

我正在使用PHPMailerAPI发送电子邮件.我想知道如何用阿拉伯语(非英语)语言发送主题

$mail->CharSet  =  'utf-8';
$array=  FetchTable('cos');
$subject =  $_POST['subject'];
$body    =  $_POST['body'];

$mail = new PHPMailer();
$mail->IsSMTP();    
$mail->Host     = "host";    
$mail->SMTPAuth = true;    
$mail->Username = "yaz@enfaltourism.com";   
$mail->Password = "*******";  
$mail->Port     = "587";  
$mail->From     = "yaz@enfaltourism.com";    
$mail->FromName = "Enfaltourism";   
$mail->Subject  = $subject;     
$mail->AddAddress($email); 
$mail->Send();`
Run Code Online (Sandbox Code Playgroud)

电子邮件已成功发送,但问题在于使用阿拉伯语发送主题.在设置字符编码后,电子邮件正文以阿拉伯语正确显示,但主题以奇怪的字符显示

更新

include("../mail/class.phpmailer.php");
$array=  FetchTable('cos');
$subject =  $_POST['subject'];
$body    =  $_POST['body'];
    $mail = new PHPMailer();
    $mail->CharSet  =  'utf-8';
    $mail->IsSMTP();    
 $mail->Host     = "mail.enfaltourism.com";    
 $mail->SMTPAuth = true;    
 $mail->Username = "yaz@enfaltourism.com";   
 $mail->Password = "*****";  
 $mail->Port     = "587";  
 $mail->From …
Run Code Online (Sandbox Code Playgroud)

php encoding arabic phpmailer

1
推荐指数
2
解决办法
7264
查看次数