Автор: noki
Дата сообщения: 01.11.2006 13:36
		[more]<? 
  
 function checkmail($str) 
 { 
 $badchars = "[ ]+| |\+|=|[|]|{|}|`|\(|\)|,|;|:|!|<|>|%|\*|/|'|\"|~|\?|#|\\$|\\&|\\^|www[.]"; 
  
 return (eregi($badchars,$str)); 
 } 
  
 function headerconv ($str) 
 { 
 $str = trim($str); 
 $str = stripslashes($str); 
  
 return $str; 
 } 
  
 function htmlconv ($str) 
 { 
  
      if (get_magic_quotes_gpc): 
  
      $str = stripslashes($str); 
  
      endif; 
  
 $str = str_replace("\"", """, $str); 
 $str = str_replace("<","<",$str); 
 $str = str_replace(">",">",$str); 
 $str = str_replace("\r\n", "\n", $str); 
 $str = str_replace("\r", "\n", $str); 
 $str = str_replace("\n", "<br>", $str); 
 $str = str_replace("\$", "$", $str); 
 $str = str_replace("|", "/", $str); 
 $str = eregi_replace("(<br>*){2,}","<br><br>",$str); 
 $str = eregi_replace("[ ]{2,}", " ", $str); 
 $str = trim($str); 
  
 return $str; 
 } 
  
 include ("config.inc"); 
  
 if ($config[inc_headers] == "on"): 
  
 include ($config[header]); 
  
 endif; 
  
 if ($action != "send"): 
  
 include ("./form.inc"); 
  
 else: 
  
      if ($form[familia] == "" || $form[name] == "" || $form[otchestvo] == "" || $form[day] == "" || $form[month] == "" || $form[year] == "" || $form[cityday] == "" || $form[stranaday] == "" || $form[pol] == "" || $form[educate] == "" || $form[foto] == "" || $form[pochadress] == "" || $form[email] == "" || $form[semia] == "" || $form[deti] == ""): 
  
      $errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>"; 
      $errormessage = "<p class=\"T\">Не были заполнены следующие обязательные поля:</p>"; 
      $errormessage .= "<ol>"; 
  
 <--------------------------------------------------> 
           if ($form[foto] == ""): $errormessage .= "<li><p class=\"T\">Ваша Фотография отсутствует</p></li>"; endif; 
           <-------------------------------> 
  
 endif; 
            
  
      $errormessage .= "</ol>"; 
      $errormessage .= "<p class=\"T\">Пожалуйста, вернитесь назад и попробуйте снова.</p>"; 
  
      include ("./error.inc"); 
  
      else: 
  
      $header[familia]  = headerconv($form[familia]); 
      $header[name] = headerconv($form[name]); 
  
      <----------------------------------> 
      $form[foto] = htmlconv($form[foto]); 
     <---------------------------------------> 
  
           if (!(eregi("([a-z0-9_\-\.])+@([a-z0-9_\-\.])+\.([a-z0-9_\-\.])+",$form[email])) || checkmail($form[email])): 
  
           $errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>"; 
           $errormessage  = "<p class=\"T\">Введенный вами адрес E-Mail (".$form[email].") содержит 
           недопустимые символы или имеет неправильный формат.</p>"; 
           $errormessage .= "<p class=\"T\">Пожалуйста, вернитесь назад и попробуйте снова.</p>"; 
  
           include ("./error.inc"); 
  
           else: 
  
           $contents = file($config[recip_file]); 
           $numlines = sizeof($contents); 
  
                 for ($i=0;$i<$numlines;$i++) { 
                 $contents[$i] = explode("|",$contents[$i]); 
                 } 
  
           $form[send_to] = $contents[$form[recip]-1][1]."<".$contents[$form[recip]-1][0].">"; 
  
                  if ($form[sendcopy] == "on"): 
  
                  $form[send_to]  = $form[send_to] . ", "; 
                  $form[send_to] .= $header[name]."<".$form[email].">"; 
  
                  endif; 
  
                  $sendmessage = "<html> 
                                  <head> 
                                  <title>".$form[familia]."</title> 
                                  </head> 
                                  <table border=\"0\" cellpadding=\"2\" cellspacing=\"0\" width=\"100%\"> 
                                  <tr> 
                                  <td><font face=\"Verdana\" size=\"2\">".$form[familia]."<br>".$form[name]."<br>".$form[otchestvo]."<br>".$form[day]."<br>".$form[month]."<br>".$form[year]."<br>".$form[cityday]."<br>".$form[stranaday]."<br>".$form[stranagoo]."<br>".$form[pol]."<br>".$form[educate]."<br>".$form[foto]."<br>".$form[pochadress]."<br>".$form[phone]."<br>".$form[email]."<br>".$form[semia]."<br>".$form[deti]."<br>".$form[message]; 
  
                       if ($config[features] == "on"): 
  
                       $sendmessage .= "<br><br>---------------------- 
                                        <br>Обозреватель: $HTTP_USER_AGENT 
                                        <br>Адрес IP: $REMOTE_ADDR"; 
                                         
                        endif; 
  
                  $sendmessage .= "</font></td> 
                                   </tr> 
                                   </table> 
                                   </body> 
                                   </html>"; 
  
                  $headers  = "MIME-Version: 1.0\n"; 
                  $headers .= "From: ".$header[name]."<".$form[email].">\n"; 
                  $headers .= "Content-Type: text/html; charset=".$config[charset]."\n"; 
                  $headers .= "X-Mailer: PHP/" . phpversion(); 
  
                  { 
                  set_time_limit(30); 
  
                       if (mail($form[send_to], $header[familia], $sendmessage, $headers)): 
  
                       $okheader = "<p class=\"T\"><b>СООБЩЕНИЕ ОТПРАВЛЕНО!</b></p>"; 
                       $okmessage  = "<p class=\"T\">Спасибо, ".$form[name].", ваше сообщение успешно отправлено. 
                       Мы постараемся вам ответить в течение нескольких часов."; 
  
                            if ($sendcopy == "on"): 
  
                            $okmessage .= "<p class=\"T\">На ваш E-Mail (".$form[email].") послана копия письма. Через 
                            несколько минут вы можете проверить свой почтовый ящик, чтобы убедиться, что отправка прошла успешно.</p>"; 
  
                            endif; 
  
                       include ("./ok.inc"); 
  
                       else: 
  
                       $errorheader = "<p class=\"T\"><b>СООБЩЕНИЕ НЕ ОТПРАВЛЕНО!</b></p>"; 
                       $errormessage  = "<p class=\"T\">Произошла непредвиденная ошибка при попытке 
                       отправить сообщение.</p>"; 
                       $errormessage .= "<p class=\"T\">Пожалуйста, вернитесь назад и попробуйте снова. 
                       Если ошибка будет повторяться, обратитесь к <b><a href=\"mailto:".$config[admin_email]."\">Вебмастеру</a></b>.</p>"; 
  
                       include ("./error.inc"); 
  
                       endif; 
                   } 
           endif; 
            
      endif; 
  
 endif; 
  
 if ($config[inc_headers] == "on"): 
  
 include ($config[footer]); 
  
 endif; 
  
 ?>[/more] 
  
  
 Добавлено: 
 Говорят что у меня не верно написана функция прикрепления файлов. Вот и она: Mail_Mime::addAttachment() -- add attachment . Тока я так и не понял куда же мне ее приткнуть??? 
  
 Добавлено: 
 Я так пониаю проблеиа в этом операторе$form[foto] = htmlconv($form[foto]); и в этом <br>".$form[foto].". Только что же вместо них надо вставить???