Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to display an image in email in codeigniter?

      $this->load->library('upload');
      $this->load->library('email');
      $this->email->set_newline("\r\n");
      $this->email->from($email);
      $this->email->to($cus_email);
      $this->email->subject($promo_name.' Offers');
      $this->email->message($remarks.'/n <img src="<?php echo base_url();?>images/promotions/<? echo $image; ?>" style="float: left;margin-top: -11px;width: 100px;margin-left:10px;" />');


     // $this->email->attach($img,'inline');
    // $this->email->attach($img);
       $this->email->send();

Tried including in message and also tried as inline attachment,but both didn't work. What i need is when an email is sent & on opening it,the image should be seen.

Currently I am receiving email as given below

$remarks.'/n <img src="<?php echo base_url();?>images/promotions/<? echo $image; ?>" style="float: left;margin-top: -11px;width: 100px;margin-left:10px;" />')
like image 442
Sanjuktha Avatar asked Sep 02 '25 17:09

Sanjuktha


1 Answers

Method 01 (Codeigniter)

Upload the image to your server.

In your controller that is sending email, add this line:

$this->email->attach("/home/yoursite/location-of-file.jpg", "inline");

Then in the email view add this:

<img src="cid:location-of-file.png" border="0">

And location-of-file.jpg will be changed to the content id for that resource.

Other things will work as well such as ...src=", ...href=", url('')

Method 02 (standard)

$to = '[email protected]';
$subject = 'Mail With Inline Image';

$message = 'This is first line';
$message .= 'This is Second line';
$message .= '<img src="http://example.com/images/filename.jpg" alt="my picture">';

$header = 'MIME-Version: 1.0';
$header .= 'Content-Type: text/html; charset="ISO-8859-1';

mail($to, $subject,$message,$header)
like image 196
Abdulla Nilam Avatar answered Sep 04 '25 08:09

Abdulla Nilam