Русский English Deutsch Українська Қазақша

Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не вошли.

#1 2009-08-24 13:12:08

apd2004
Участник
Здесь с 2009-07-15
Сообщений: 11
Рейтинг :   

Скрипт обратной связи с прикреплением файла

Очень нужна форма обратной связи НО с возможностью прикреплять файлы !
Кто может , помогите (просто напишите код)...

Заранее спасибо!!

Register globals = off

Отредактировано apd2004 (2009-08-24 13:14:19)

Вне форума

#2 2009-08-24 14:13:43

graf
Участник
Откуда: Днепр
Здесь с 2008-10-13
Сообщений: 394
Рейтинг :   

Re: Скрипт обратной связи с прикреплением файла

если сильно горит, сожно просто скриптик кинуть в корень

код формы

<form action="action_mail.php" method="post" enctype="multipart/form-data"> 
<center>Ваш E-mail:</center><input type="text" name="from"><br> 
<center>Тема:</center><input type="text" name="subj"><br> 
Сообщение:<br><textarea cols="50" rows="10" name="text"></textarea><br> 
Файл: <input type="file" name="file"><br> 
<input type="submit" name="submit" value="Отправить"> 
</form>

action_mail.php

<? 
//Функция проверки переменной 
function html_filter($str) { 
    $result = HTMLSpecialChars($str); 
    return $result;} 

//Функция проверки e-mail 
function isEmail($email){ 
    if (eregi("^[a-z0-9]+([-_\.]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]+$", $email)){return TRUE;}else{return FALSE;}} 

//Функция отправки письма с аттачем 
$to = ("ВПИШИ@МЫЛО"); 
function XMail($from, $to, $subj, $text, $filename, $file) 
{ 
$f         = fopen($file,"rb"); 
$un        = strtoupper(uniqid(time())); 
$head      = "From: $from\n"; 
$head     .= "To: $to\n"; 
$head     .= "Subject: $subj\n"; 
$head     .= "X-Mailer: PHPMail Tool\n"; 
$head     .= "Reply-To: $from\n"; 
$head     .= "Mime-Version: 1.0\n"; 
$head     .= "Content-Type:multipart/mixed;"; 
$head     .= "boundary=\"----------".$un."\"\n\n"; 
$zag       = "------------".$un."\nContent-Type:text/html;\n"; 
$zag      .= "Content-Transfer-Encoding: 8bit\n\n$text\n\n"; 
$zag      .= "------------".$un."\n"; 
$zag      .= "Content-Type: application/octet-stream;"; 
$zag      .= "name=\"".basename($filename)."\"\n"; 
$zag      .= "Content-Transfer-Encoding:base64\n"; 
$zag      .= "Content-Disposition:attachment;"; 
$zag      .= "filename=\"".basename($filename)."\"\n\n"; 
$zag      .= chunk_split(base64_encode(fread($f,filesize($file))))."\n"; 
if (!@mail("$to", "$subj", $zag, $head)) 
return 0; 
else 
return 1; 
} 


//Получаем данные из формы 
if(isset($submit)): 
//Проверяем полученные из формы данные 
$from = trim(html_filter($from)); 
$to = trim(html_filter($to)); 
$subj = trim(html_filter($subj)); 
$text = trim(html_filter($text)); 
$text = str_replace("\n", "<br>\n", $text); 
$filename = trim(html_filter($file_name)); 
//Если прикреплен файл 
if($filename!="" and $file_size>0): 
    if(XMail($from, $to, $subj, $text, $filename, $file)==1){header("Location:?send=ok");} 
endif; 
//Если Не прикреплен файл 
if($filename=="" or $file_size==0): 
    if(EMail($from, $to, $subj, $text)==1){header("Location:?send=ok");} 
endif; 
endif; 
?>

Вне форума

#3 2009-08-24 14:24:49

apd2004
Участник
Здесь с 2009-07-15
Сообщений: 11
Рейтинг :   

Re: Скрипт обратной связи с прикреплением файла

graf,
Спасибо, но , когда нажимаю "отправить" ... то просто появляется чистая страница....

на ящик тоже ничего не приходит...

Отредактировано apd2004 (2009-08-24 14:27:18)

Вне форума

#4 2012-02-17 17:33:46

vl
VIP любит этого пользователя.
Откуда: ua
Здесь с 2008-10-14
Сообщений: 664
Рейтинг :   14 
Сайт

Re: Скрипт обратной связи с прикреплением файла

apd2004 пишет:

Очень нужна форма обратной связи НО с возможностью прикреплять файлы

Вот эта форма работает, и файл прикрепляет,  проверено.   
http://www.php-mail.ru/?id=6

Но class.phpmailer.php  я брал отсюда    www.seomark.ru/class.phpmailer.zip, иначе возникали ошибки.

Отредактировано vl (2012-02-18 18:01:56)

Вне форума

Сейчас в этой теме пользователей: 0, гостей: 1
[Bot] ClaudeBot

Подвал форума

Под управлением FluxBB 1.5.11
Модифицировал Visman

[ Сгенерировано за 0.011 сек, 7 запросов выполнено - Использовано памяти: 521.83 Кбайт (Пик: 550.04 Кбайт) ]