Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Join the forum, it's quick and easy

Программируем

Пожалуйста, зарегистрируйтесь или войдите под уже созданным логином. Вы получите полный доступ ко всем статьям форума.

Программируем

Вы хотите отреагировать на этот пост ? Создайте аккаунт всего в несколько кликов или войдите на форум.
Программируем

На нашем форуме программистов вы сможете найти софт для программирования и другие программы. На форуме обсуждаются многие языки программирования, задачи и их решения. Используются языки: C, Assembler, Pascal, Delphi, Flash и другие.

Последние темы

» Арена искусственных интеллектов Gridwars
PHP Скрипт для отправки почты EmptyСр Окт 12, 2016 2:43 am автор SeriousPasha

» требуется несколько JS разработчиков
PHP Скрипт для отправки почты EmptyПт Окт 07, 2016 10:19 pm автор mrktwn1

» Защита приложения от взлома
PHP Скрипт для отправки почты EmptyЧт Июн 18, 2015 10:28 pm автор stradi

» Ищите программиста или дизайнера?
PHP Скрипт для отправки почты EmptyПт Мар 27, 2015 6:25 am автор фриланс

» Создание и продвижение сайтов, их развитие.
PHP Скрипт для отправки почты EmptyСр Мар 25, 2015 12:40 am автор asdfghhgfdsa

» Исходники для студентов + скайп-консультации,помощь в написании программ
PHP Скрипт для отправки почты EmptyВт Окт 07, 2014 11:25 pm автор Horpion

» IT- технологии для развития бизнеса
PHP Скрипт для отправки почты EmptyПн Июн 23, 2014 6:11 pm автор dvos12

» Стенли Кубрик "С Широко закрытыми Глазами"
PHP Скрипт для отправки почты EmptyЧт Июн 12, 2014 2:01 am автор Vertuozzz

» Каталог популярных хостинг компаний
PHP Скрипт для отправки почты EmptyСб Май 10, 2014 7:18 pm автор naik

Самые активные пользователи

Aster (142)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Exkalibur (89)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Чебурашка (63)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Administrator (34)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
ak95 (8)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Пушкин (7)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
K4_ (7)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
LuDa (7)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Goldcoding (6)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 
Admin (6)
PHP Скрипт для отправки почты Bar_leftPHP Скрипт для отправки почты BarPHP Скрипт для отправки почты Bar_right 

Партнеры

PHP Скрипт для отправки почты Top100 Rambler's Top100

    PHP Скрипт для отправки почты

    avatar
    Vitalik010979
    Новичек
    Новичек


    Сообщения : 1
    Очки : 3
    Репутация : 0
    Дата регистрации : 2011-09-08

    PHP Скрипт для отправки почты Empty PHP Скрипт для отправки почты

    Сообщение автор Vitalik010979 Чт Сен 08, 2011 4:46 am

    Админ ПОМОГИ У меня PHP скрипт для отправки письма на почту заборохлил Он РАБОТАЕТ но вложения файлов приходят пустыми 0кб
    Вот Скрипт
    Код:
    <?php
    $message_in_min = 10000;
    $mode = $HTTP_POST_VARS['mode'];

    switch($mode){
     case 'send':
      if(isset($HTTP_POST_FILES['filename']['tmp_name'])){
        $base_name = $HTTP_POST_FILES['filename']['name'];
        $f = fopen($HTTP_POST_FILES['filename']['tmp_name'],"rb");
        $attach = base64_encode(fread($f,filesize($HTTP_POST_FILES['filename']['tmp_name'])));
        $isfile = 1;
      }
      else {$isfile = 0;}
      # Проверки ##################################################    ###############
      $from = $HTTP_POST_VARS['from'];
      if(empty($from)){echo("Неуказан адрес отправителя");exit;}
      else if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i",$from)){echo("$from - не верный адрес отправителя"); exit;}
      $fromname = @$HTTP_POST_VARS['fromname'];
      if(isset($fromname)){$from = $fromname." <$from>";}
      $subject = $HTTP_POST_VARS['subject'];
      $subject =  htmlspecialchars(stripslashes($subject));
      if(!$subject){echo("Опять же, кто будет писать тему сообщения?");}
      $type = $HTTP_POST_VARS['type'];
      $message = $HTTP_POST_VARS['message'];
      if($type == 'text'){$message =  htmlspecialchars(stripslashes($message));}
      if(!$message){echo("Короче, нужно что то написать. Где сообщение-то?"); exit;}
      ##################################################    ##########################
      $to_arr = file(@$HTTP_POST_FILES['to']['tmp_name']);
      // print_r($to_arr);exit;
      $to_arr = array_unique($to_arr);
      $i = 0;
      $current_message= 0;
      $num_send = 0;
      $num_bad  = 0;
      $num_error= 0;
      while(isset($to_arr[$i])){
        $to_arr[$i] = trim($to_arr[$i]);
        if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i",$to_arr[$i])){
          echo($to_arr[$i].' - голимый адрес, я на его отправлять ничего не собираюсь'."<br>\n");
          $num_bad++;
        }
        else{
          if(sendemail($from,$to_arr[$i],$subject,$message,$type)){
            echo('Сообщение на '.$to_arr[$i]." отправлено<br>\n"); flush();
            $num_send++;
          }
          else{$num_error++;}
        }
        $current_message++;
        if($current_message == $message_in_min){
          $current_message = 0;
          echo('Отправлено '.$message_in_min.' соообщений. Пауза 60 сек.'."<br>\n");
          flush();
          sleep(30);
          echo('<!---->'."\n");
          flush();
          sleep(30);
        }
        $i++;
      }
      echo('<hr size="1" color="#000000">Рассылка завершена!<br>'."\n");
      echo('
        <b>Отправлено  : '.$num_send.'</b>
        <b>Ошибок связи: '.$num_error.'</b>
        <b>Плохих email: '.$num_bad.'</b>
        <hr size="1" color="#000000">
      ');
     break;
     default:
      echo('
    <div align="center">
    <h1>Рассылка писем</h1>
    <form method="post" enctype="multipart/form-data">
    <table align="center" border="0">
    <tr>
     <td align="right" bgcolor="#EBEBEB"><strong>От кого (Имя):</strong></td>
     <td><input type="Text" class="inp" name="fromname" value="" size="30"> * - Не обязательно. Например, Пупкин И.И.</td>
    </tr>
    <tr>
     <td align="right" bgcolor="#EBEBEB"><strong>От кого (Email):</strong></td>
     <td><input type="Text" class="inp" name="from" value="" size="30"> * - Только email адрес</td>
    </tr>
    <tr>
     <td align="right" bgcolor="#EBEBEB"><strong>Кому:</strong></td>
     <td><input type="File" name="to" class="inp" size="68"></td>
    </tr>
    <tr>
     <td align="right" bgcolor="#EBEBEB"><strong>Тема:</strong></td>
     <td><input type="Text" class="inp" name="subject" value="" size="80"></td>
    </tr>
    <tr>
     <td valign="top" align="right" bgcolor="#EBEBEB"><strong>Сообщение:</strong></td>
     <td><textarea name="message" rows="10" cols="82" class="inp"></textarea></td>
    </tr>
    <tr>
     <td valign="top" align="right" bgcolor="#EBEBEB"><strong>Прикрепить файл:</strong></td>
     <td><input type="file" name="filename" class="inp" size="68"></td>
    </tr>

    <tr>
     <td align="right" bgcolor="#EBEBEB"><strong>Формат</strong></td>
     <td>

    <table width="100%">
    <tr>
     <td width="20"><input class="inp" type="Radio" name="type" value="text" checked></td>
     <td width="40">text    </td>
     <td width="20"><input class="inp" type="Radio" name="type" value="html"></td>
     <td width="40">html</td>
     <td align="right"><input type="Hidden" name="mode" value="send"><input type="Submit" class="inp" value="Отправить"></td>
    </tr>
    </table>

    </td>
    </tr>
    <tr>
     <td bgcolor="#EBEBEB"></td>
     <td><hr size="3" color="#F7F7F7"></td>
    </tr>
    </table>
    </form>
    </div>
    ');
     break;
    }

    function sendemail($from,$to,$subject,$message,$type){
     $bound = time().'SPB';
     global $attach, $base_name, $isfile;

     $sep = chr(13).chr(10); // Разделитель строк заголовка
     switch($type){
      case 'text':
        $headers = "From: ".$from.$sep;
        $headers.= "X-Priority: 3".$sep;
        $headers.= "X-MSMail-Priority: Normal".$sep;
        $headers.= "X-Mailer: PHP/".phpversion().$sep;
        $headers.= "MIME-Version: 1.0".$sep;
        $headers.= "Content-Type: multipart/mixed; boundary=\"".$bound."\"".$sep.$sep;

        $body = "--$bound".$sep;
        $body.= "Content-type: text/plain; charset=\"windows-1251\"".$sep;
        $body.= "Content-Transfer-Encoding: 8bit".$sep.$sep;
        $body.= $message.$sep;
         
        if($isfile == 1){
          $body.= "$sep$sep--$bound".$sep;
          $body.= "Content-Type: application/octet-stream;";
          $body.= "name=\"".basename($base_name)."\"".$sep;
          $body.= "Content-Transfer-Encoding:base64".$sep;
          $body.= "Content-Disposition:attachment".$sep.$sep;
          $body.= $attach.$sep;
        }
        // $body.="$bound--".$sep.$sep;
      break;
      case 'html':
        $headers = "From: ".$from.$sep;
        $headers.= "X-Priority: 3".$sep;
        $headers.= "X-MSMail-Priority: Normal".$sep;
        $headers.= "X-Mailer: PHP/".phpversion().$sep;
        $headers.= "MIME-Version: 1.0".$sep;
        $headers.= "Content-Type: multipart/mixed; boundary=\"".$bound."\"".$sep.$sep;

        $body = "--$bound".$sep;
        $body.= "Content-type: text/html; charset=\"windows-1251\"".$sep;
        $body.= "Content-Transfer-Encoding: 8bit".$sep.$sep;
        $body.= $message.$sep;

        if($isfile == 1){
          $message_part = "--$boundary\n";
        $message_part .= "Content-Type: application/octet-stream\n";
        $message_part .= "Content-Transfer-Encoding: base64\n";
        $message_part .= "Content-Disposition: attachment; filename = \"".$path."\"\n\n";
        $message_part .= chunk_split(base64_encode($file))."\n";
        $multipart .= $message_part."--$boundary--\n";
        }
        // $body.="$bound--".$sep.$sep;
      break;
      default:
        echo('<center><b>Неверный параметр типа письма.</b></center>');
      break;
     }
     if(mail($to,$subject,$body,$headers)){return true;}
     else{return false;}
    }
    ?>

      Текущее время Пт Мар 29, 2024 12:34 am