двойная работа mail() php
почему то не отправляется два письма
первое идет -второе нет в чем причина? тела писем разные <?php if (file_exists('count_file.txt')) { $fil = fopen('count_file.txt', r); $dat = fread($fil, filesize('count_file.txt')); fclose($fil); $fil = fopen('count_file.txt', w); fwrite($fil, $dat+1); $count=$dat+1; } else { $fil = fopen('count_file.txt', w); fwrite($fil, 1); $count=1; fclose($fil); } $array_my=array( 'tovar1'=>'Оригинальный Набор Rainbow loom', 'tovar2'=>"Оригинальный Набор 'Rainbow loom'+2 пакета резиночек", 'tovar3'=>"Пакет резиночек Зеленый", "tovar4"=>"Пакет резиночек Голубой", "tovar5"=>"Пакет резиночек Желтый", "tovar6"=>"Пакет резиночек Белый", "tovar7"=>"Пакет резиночек Синий", "tovar8"=>"Пакет резиночек Красный", "color1"=>"Пакет 1", "color2"=>"Пакет2" ); //письмо менеджеру function manager_mail($count){ $mailto=""; $mailfrom = isset($_POST['email']) ? $_POST['email'] : $mailto; $subject = 'Заявка !!!'; $message = ' '; $success_url = './TH-PopUp.php'; $error_url = ''; $error = ''; $eol = "\r\n"; $max_filesize = isset($_POST['filesize']) ? $_POST['filesize'] * 1024 : 1024000; $boundary = md5(uniqid(time())); $header = 'From: '.$mailfrom.$eol; $header .= 'Reply-To: '.$mailfrom.$eol; $header .= 'MIME-Version: 1.0'.$eol; $header .= 'Content-Type: multipart/mixed; boundary="'.$boundary.'"'.$eol; $header .= 'X-Mailer: PHP v'.phpversion().$eol; $internalfields = array ("submit", "reset", "send", "captcha_code"); $message .= $eol; $message .= "IP Address : "; $message .= $_SERVER['REMOTE_ADDR']; $message .= $eol; $message.="Номер заявки :".$count.$eol; foreach ($_POST as $key => $value) { if($key=="data"){ $obb=json_decode($value,true); $message .= " З А К А З". $eol; foreach($obb as $k=>$v){ foreach($v as $kk=>$vv){ if($kk=="total") { $message .= "Сумма заказа : " . $vv ." руб.". $eol; } else{ if($kk=="text"){ $p1=$vv; $p2=$v['kol']; $message .= $p1 ." : " . $p2 ." шт.". $eol; if(isset($v['color1'])){ $message .="Пакет 1 : " . $v['color1']. $eol; $message .="Пакет 2 : " . $v['color2']. $eol; } } } } } } else{ if (!in_array(strtolower($key), $internalfields)) { if (!is_array($value)) { $message .= ucwords(str_replace("_", " ", $key)) . " : " . $value . $eol; } else { $message .= ucwords(str_replace("_", " ", $key)) . " : " . implode(",", $value) . $eol; } } } } $body = 'This is a multi-part message in MIME format.'.$eol.$eol; $body .= '--'.$boundary.$eol; $body .= 'Content-Type: text/plain; charset=UTF-8'.$eol; $body .= 'Content-Transfer-Encoding: 8bit'.$eol; $body .= $eol.stripslashes($message).$eol; if (!empty($_FILES)) { foreach ($_FILES as $key => $value) { if ($_FILES[$key]['error'] == 0 && $_FILES[$key]['size'] <= $max_filesize) { $body .= '--'.$boundary.$eol; $body .= 'Content-Type: '.$_FILES[$key]['type'].'; name='.$_FILES[$key]['name'].$eol; $body .= 'Content-Transfer-Encoding: base64'.$eol; $body .= 'Content-Disposition: attachment; filename='.$_FILES[$key]['name'].$eol; $body .= $eol.chunk_split(base64_encode(file_get_contents($_FILES[$key]['tmp_name']))).$eol; } } } $body .= '--'.$boundary.'--'.$eol; if ($mailto != '') { mail($mailto, $subject, $body, $header); echo $count; } } //письмо клинту function client_mail($count){ $to=$_REQUEST['E-Mail']; $subject = 'Ваш заказ на сайте w'; $eol = "\r\n"; $mailto=""; $mailfrom = isset($_POST['email']) ? $_POST['email'] : $mailto; $boundary = md5(uniqid(time())); $header = 'MIME-Version: 1.0' . "\r\n"; $header .= 'Content-type: text/html; charset=utf-8' . "\r\n"; $header.='From:'.$mailfrom.$eol; $header.='Reply-To: '.$mailto.$eol; $header .= 'X-Mailer: PHP v'.phpversion().$eol; $name=$_REQUEST['Имя']; $phone=$_POST['Tel_']; $mes='<div style="position:relative;width:600px;height:auto;text-align:center;z-index:2;margin:20px auto;"> <div style="line-height:61px;"><span style="color:#000000;font-size:37px;">Уважаемый/ая, '.$name.',</span></div> <div style="line-height:39px;"><span style="color:#000000;font-size:20px;">Благодарим Вас за оформление заказа №'.$count.' <br>на www.</span></div> <div style="line-height:39px;"><span style="color:#000000;font-size:20px;">Для подтверждения заказа наш менеджер свяжется с Вами в ближайшее время.</span></div> <div style="line-height:39px;"><span style="color:#000000;font-size:20px;">Ожидайте звонка на номер '.$phone.' (указанный в форме выше)</span></div> <div><span style="color:#000000;font-size:20px;">С уважением,ru</span></div> </div> </div>'; $mes.='--'.$boundary.'--'.$eol; mail($to, $subject, $mes, $header); } client_mail($count); manager_mail($count); ?> |
а если местами отправку поменять?
менеджер может быть занят и ему не до приёма почты, поэтому проверь и приведи все получаемые на вход данные |
да не совсем то
короче времено помогла задержка client_mail($count); sleep(1); manager_mail($count); между отправками двух писем а так то наверное надо подключить какой нибуть phpmailer |
Часовой пояс GMT +3, время: 06:45. |