Reputation: 162
Hello i need help i have been doing my best to be able to send html email but its not working i just get the alert that email have not been sent. In the library > email.php file i havent change anything just left as default please help because i have been trying to solve this problem since two weeks ago please help!
$name = $this->input->post('name');
$email = $this->input->post('email');
$comment = $this->input->post('message');
$config['mailtype'] = 'html';
$this->load->library('email',$config);
$message = "<html>";
$message .= "<style type='text/css'> body,td,th { font-family: Arial, Helvetica, sans-serif; font-size: 13px;}</style>";
$message .= "<body>";
$message .= "<table width='650' border='1' cellspacing='0' cellpadding='6'> ";
$message .= "<tr>";
$message .= "<td colspan='2' bgcolor='#6495ed' style='font-weight: bold;'>CONTACT DETAILS</td>";
$message .= "</tr>";
$message .= "<tr>";
$message .= "<td width='237'>Client Name:</td>"."<td width='393'>".$name."</td>";
$message .= "</tr>";
$message .= "<tr>";
$message .= "<td>Message:</td>"."<td>".$comment."</td>";
$message .= "</table><br><br>";
$message .= "</body>";
$message .= "</html>";
$this->email->from($email,$name);
$this->email->to('[email protected]','[email protected]');
$this->email->subject('New Contact Email from Client');
$this->email->message($message);
$this->email->send();
if($this->email->send()== TRUE){
echo'message sent';
}else{
echo'message not sent';
}
Upvotes: 1
Views: 616
Reputation: 442
Send mail with googlemail smtp
$this->load->library('email');
$config = Array(
'protocol' => 'smtp',
'smtp_host' => 'ssl://smtp.googlemail.com',
'smtp_port' => 465,
'smtp_user' => '[email protected]', // change it to yours
'smtp_pass' => '*******', // change it to yours
'mailtype' => 'html', // text
'charset' => 'iso-8859-1',
'newline' => '\r\n',
'wordwrap' => TRUE
);
$this->email->initialize($config);
$this->email->from('[email protected]');
$this->email->to('[email protected]');
$this->email->subject('Test mail');
$this->email->message('Test HTML Data');
if($this->email->send())
{
echo "Mail sent";
}
else
{
show_error($this->email->print_debugger());
}
Upvotes: 1
Reputation: 22532
Because you are sending email two times in your code
$this->email->send();// first time
if($this->email->send()== TRUE){ //and second time here
After $this->email->send()
every thing is clear. Just use
$this->email->message($message);
if($this->email->send()== TRUE){
echo'message sent';
}else{
echo'message not sent';
}
Upvotes: 1