RE: weird mail function problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



First off, this is not the most efficient way to send mail as it closes &
reopens connections to the server for each mail.  Look into using PEAR.

Secondly, I would not loop through everything for each email address.  One
way to do it would be to say:

If($email_to != ""){
    $to = explode(",", $email_to);
    $to_email = "";
    $i = 0;
    While($i<=count($to)){
        $to_email .= $to[$i];
    }
    // Now, just create 1 email, and send it to all the names
      $subject = $email_subject;
      $body .= $HTTP_POST_VARS['message'];
      $body .= "\n---------------------------\n";
	$body .= "Article Name :";
	$body .= "\n---------------------------\n";
	$body .= $Article_Name;
	$body .= "\n---------------------------\n\n";		
	$body .= "\nStory :\n\n";
	$body .= $TheStory;				
	$body .= "\n\n\n---------------------------\n";
	$body .= "Sent By: ".$HTTP_POST_VARS['email_address']."\n";
	$header = "From: ".$HTTP_POST_VARS['email_address']."
<".$HTTP_POST_VARS['email_address'].">\n";
	$header .= "Reply-To: ".$HTTP_POST_VARS['email_address']."
<".$HTTP_POST_VARS['email_address'].">\n";
	$header .= "X-Mailer: PHP/" . phpversion() . "\n";
	$header .= "X-Priority: 1";
      $header .= "To: Some List@xxxxxxxxxx"; // Masks To: field
	mail($to_email, $subject, $body, $header);
}

That would make more sense, yet still the server load would be huge because
of all the opening and closing of connections.  Look into PEAR::Mail or
using SMTP.

~Brett

-----Original Message-----
From: Ahmed Abdel-Aliem [mailto:me2resh@xxxxxxxxx] 
Sent: Monday, February 21, 2005 2:39 PM
To: php-general@xxxxxxxxxxxxx
Subject:  weird mail function problem

hi
i use this code to send email from mysite
but when it sends to some accounts it repeats the body part twice in
the same email while to other accounts it sends the body one time only
can anyone help in that plz ?


	if ($email_to != "") {
		$to = array();
		$to = explode (",", $email_to);
		$to_mum = count($email_to);
		for ($i=0; $i<$to_mum ; $i++){
			$to_email = $to[$i];
			$subject = $email_subject;
			$body .= $HTTP_POST_VARS['message'];
			$body .= "\n---------------------------\n";
			$body .= "Article Name :";
			$body .= "\n---------------------------\n";
			$body .= $Article_Name;
			$body .= "\n---------------------------\n\n";

			$body .= "\nStory :\n\n";
			$body .= $TheStory;				
			$body .= "\n\n\n---------------------------\n";
			$body .= "Sent By: " .
$HTTP_POST_VARS['email_address'] . "\n";
			$header = "From: " .
$HTTP_POST_VARS['email_address'] . " <" .
$HTTP_POST_VARS['email_address'] . ">\n";
			$header .= "Reply-To: " .
$HTTP_POST_VARS['email_address'] . " <" .
$HTTP_POST_VARS['email_address'] . ">\n";
			$header .= "X-Mailer: PHP/" . phpversion() . "\n";
			$header .= "X-Priority: 1";
			mail($to_email, $subject, $body, $header);

-- 
Ahmed Abdel-Aliem
Web Developer
www.ApexScript.com
0101108551

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux