이 스크립트는 정상적으로 동작합니다. 문제는 내가 만들 때입니다 Click here Thunderbird 메일 링 프로그램 (Mozilla)에서 링크를 클릭 할 수 없습니다. 소스 코드를 보면 괜찮습니다. 뭐라 구요?썬더 버드에 html 메일을 보낼 때 PHP 메일에서 링크를 표시 할 수 없습니다.
public function send_mail($email='',$subject='',$text='') {
$mail = new PHPMailer();
$db = new Db();
$sql = $db->query("SELECT * FROM configuration WHERE name='shopemail' OR name='shopname'");
while($configuration = $db->fetchArray($sql)) {
$row[$configuration['name']] = $configuration['value'];
}
// MIME BOUNDARY
$mime_boundary = $data['shopname'].md5(time());
$headers = "From: ".$row['shopname']." <".$row['shopemail'].">\n";
$headers .= "Reply-To: ".$row['shopname']." <". $row['shopemail'].">\n";
$headers .= "MIME-Version: 1.0\n";
$headers .= "Content-Type: multipart/alternative; boundary=\"$mime_boundary\"\n";
// TEXT EMAIL PART
$message = "--$mime_boundary\n";
$message .= "Content-Type: text/html; charset=iso-8859-1\n";
$message .= "Content-Transfer-Encoding: 8bit\n\n";
$message .= $text."\n";
// FINAL BOUNDARY
$message .= "--$mime_boundary--\n\n";
// SEND MAIL
$mail_sent = @mail($email, $subject, $message, $headers);
}
저는'$ email'이 HTML 콘텐츠라고 가정합니다. 그렇다면'$ email'의 샘플 값을 주어야합니다. Thunderbird에서 링크의 모양은 어떻게됩니까? 그냥 평범한 텍스트처럼 보입니까, 아니면 리터럴 HTML을 표시합니까? –
$ text는 HTML 콘텐츠입니까? 그래도 도움이 될 HTML 코드가 필요합니다 (이 코드에는 이 생성되지 않아 왜 작동하지 않는지 알 수 없습니다 ^^). 야생 추측 : 귀하의 링크 절대 ("http://example.com/blah.php") 및 상대 ("/blah.php")가 아닌가? –
Doh! 어리석은 실수를했습니다. Click here은 "http : //"부분을 놓쳤습니다. – Cudos