2014-12-19 4 views
-2

Оке, это сложный вопрос. (Я думаю). Знаете ли вы, когда получаете сообщение, и письмо имеет изображение сверху или снизу страницы. Я пытался это сделать, но не могу понять. Надеюсь, вы, парень, можете мне помочь с этой проблемой.Как вставить изображение в сообщение электронной почты

Это то, что я получил до сих пор;

<?php 
    $to = '[email protected]'; 

    if(isset($_POST['submit'])) 
    { 

    $name = $_POST['name']; 
    $gast = $_POST['email']; 
    $tmpName = $_FILES['attachment']['tmp_name']; 
    $fileType = $_FILES['attachment']['type']; 
    $fileName = $_FILES['attachment']['name']; 



    if(empty($errors)) 
    { 

    $to = $to; 
    $from = $gast; 
    $file = fopen($tmpName,'rb'); 
    $data = fread($file,filesize($tmpName)); 
    fclose($file); 

    $mimeBoundary = "==Multipart_Boundary_x{$randomVal}x"; 

    $body = "E-mail". 
    "Name: $name\n". 
    "Email: $gast \n". 
    "Content-Type: {$fileType};\n". 
    "Content-Transfer-Encoding: base64\n\n". 
    $data; 

    $headers = "From: $from \r\n"; 
    $headers .= "Email: $gast \r\n"; 
    $headers .= "\nMIME-Version: 1.0\n"; 
    $headers .= "Content-Type: multipart/alternative;\n"; 
    $headers .= " boundary=\"{$mimeBoundary}\""; 
    $headers .= "img src='http://cache.estivant.nl/image/1399025430_12_banners-bestemmingen-single-1680x460-extra2-06-kos_1399025430.jpg' alt='image'"; 

    $data = chunk_split(base64_encode($data)); 

    mail($to, $body, $headers); 

    } 
    } 

    ?> 


    <html> 
    <head></head> 
    <body> 
    <form method="post" action=""> 

    <label for="name">name</label> 
    <input type="name" name="name" value="" /> 

    <label for="email">email</label> 
    <input type="email" name="email" value="" /> 

    <button id="submit" name="submit">send</button> 
    </form> 
    </body> 
    </html> 

ответ

0

Просто написать HTML-страницу со стилями CSS и форматировать свою электронную почту, соответственно и использовать HTML в качестве почтового тела. Это позволит создать изображение в почте

<img src="image.jpg" alt="image"></img> 

Обратите внимание, что большинство (если не все) почтовые клиенты будут блокировать ваш образ от того показал ресивере до тех пор, пока вы не в их список надежных отправителей или контакт список.

Конечно, ваш адрес электронной почты будет отправлено в виде HTML

0

Вот пример отформатированный электронной почты с изображениями.

Примечание Синтаксис изображения: <img src="http://css-tricks.com/examples/WebsiteChangeRequestForm/images/wcrf-header.png" alt="Website Change Request" />'

$to = '[email protected]'; 

$subject = 'Website Change Request'; 

$headers = "From: " . strip_tags($_POST['req-email']) . "\r\n"; 
$headers .= "Reply-To: ". strip_tags($_POST['req-email']) . "\r\n"; 
$headers .= "CC: [email protected]\r\n"; 
$headers .= "MIME-Version: 1.0\r\n"; 
$headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n"; 

$message = '<html><body>'; 
$message .= '<img src="http://css-tricks.com/examples/WebsiteChangeRequestForm/images/wcrf-header.png" alt="Website Change Request" />'; 
$message .= '<table rules="all" style="border-color: #666;" cellpadding="10">'; 
$message .= "<tr style='background: #eee;'><td><strong>Name:</strong> </td><td>" . strip_tags($_POST['req-name']) . "</td></tr>"; 
$message .= "<tr><td><strong>Email:</strong> </td><td>" . strip_tags($_POST['req-email']) . "</td></tr>"; 
$message .= "<tr><td><strong>Type of Change:</strong> </td><td>" . strip_tags($_POST['typeOfChange']) . "</td></tr>"; 
$message .= "<tr><td><strong>Urgency:</strong> </td><td>" . strip_tags($_POST['urgency']) . "</td></tr>"; 
$message .= "<tr><td><strong>URL To Change (main):</strong> </td><td>" . $_POST['URL-main'] . "</td></tr>"; 
$addURLS = $_POST['addURLS']; 
if (($addURLS) != '') { 
    $message .= "<tr><td><strong>URL To Change (additional):</strong> </td><td>" . strip_tags($addURLS) . "</td></tr>"; 
} 
$curText = htmlentities($_POST['curText']);   
if (($curText) != '') { 
    $message .= "<tr><td><strong>CURRENT Content:</strong> </td><td>" . $curText . "</td></tr>"; 
} 
$message .= "<tr><td><strong>NEW Content:</strong> </td><td>" . htmlentities($_POST['newText']) . "</td></tr>"; 
$message .= "</table>"; 
$message .= "</body></html>"; 

mail($to,$subject,$message,$headers); 

исходный код и полное объяснение: http://css-tricks.com/sending-nice-html-email-with-php/

Смежные вопросы