I am trying to figure out why the bcc part of this PHP mail function is not working in the code below:
function _send_user_email($to, $subject, $message) {
$headers = array();
$headers[] = "MIME-Version: 1.0";
$headers[] = "Content-type: text/html; charset=iso-8859-1";
$headers[] = "From: Customer Service <support@mydomain.com>";
$headers[] = "Bcc: <support@mydomain.com>";
$headers[] = "X-Mailer: PHP/".phpversion();
mail($to, $subject, $message, implode("\r\n", $headers));
}
I wouldn’t think that there should be any problem specifying a bcc email address that is the same as the From address, but I’m not sure.
When I test this function, the recipient receives the message, but the BCC copy does not come through. Any idea why? Thanks.
Seriously, don’t use the
mail()function — you’re just letting yourself into a world of hurt.If you want to do anything beyond absolutely the most basic email, I strongly recommend using a decent mail class, such as phpMailer.
It will make things much easier. No more messing around building the headers yourself, or trying to get the mime types working. Sending to multiple addresses, CC and BCC addresses becomes simple, and adding attachments goes from virtually impossible with
mail()to dead simple.Hope that helps.