Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl, PHP: отправка формы на e-mail

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

Открыть новую тему     Написать ответ в эту тему

Borodino

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sTa1kEr
Cheery
спасибо за помощь!!!
 
вот рабочий код который позволяет отправлять в любой кодировке.
я был бы очень рад если бы ктонибудь мне помог его дополнить с приклейкой файла(Attachments).
Файл должен быть сохранён в UTF-8.
 

Код:
<?PHP
$FromName  = "Брейль Андрюха";
$FromEmail  = "breil-an@mail.ru";
$ToName      = "Брейль Андрей";
$ToEmail      = "pite20@gmx.de";
$Subject      = "PHP ist toll Хорошо";
$Message     = "Hallo Claudia! Хорошо";
$Charset      = "UTF-8";
 
//mb_language("Ru"); // optional
mb_internal_encoding($Charset);
$From         = mb_encode_mimeheader($FromName) . " <" . $FromEmail . ">";
$To             = mb_encode_mimeheader($ToName) . " <" . $ToEmail . ">";
$Headers    = "From: " . $From . "\r\n";
$Headers   .= "Content-Type: text/html;\r\n";
mb_send_mail($To, $Subject, $Message, $Headers);
?>

Всего записей: 585 | Зарегистр. 17-08-2006 | Отправлено: 10:21 03-12-2006 | Исправлено: Borodino, 13:58 03-12-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Borodino

Цитата:
Файл должен быть сохранён в UTF-8

берешь стандартный код для аттачмента. там посылается binary код, поэтому абсолютно пофигу в какой кодировке он написан.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:27 03-12-2006
Borodino

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вот нашел PHP mail with attachment. но проблема в том что отосланый и пришедший файлы различны по размеру, а это для бинарных файлов опасно.
 
что нужно в нижестоящем коде изменить чтобы отосланый и пришедший файлы были бы одинаковыми ?
 

Код:
<?PHP
if($senden){
$from = "breil-an@mail.ru";
$to = "pite20@gmx.de";
$subject = "testmail";
$message = "Name: ".$name."\nBeruf: ".$beruf."\nText: ".$text;
$boundary = strtoupper(md5(uniqid(time())));
$mail_header  = "From:Test <$from>\n";
$mail_header .= "MIME-Version: 1.0";
$mail_header .= "\nContent-Type: multipart/mixed; boundary=$boundary";
$mail_header .= "\n\nMultipart Nachricht";
$mail_header .= "\n--$boundary";  
$mail_header .= "\nContent-Type: text/html";
$mail_header .= "\nContent-Transfer-Encoding: 8bit";
$mail_header .= "\n\n$message";
$file_content = fread(fopen($userfile,"r"),filesize($userfile));
$file_content = chunk_split(base64_encode($file_content));
$mail_header .= "\n--$boundary";
$mail_header .= "\nContent-Type: $userfile_type; name=\"$userfile_name\"";
$mail_header .= "\nContent-Transfer-Encoding: base64";
$mail_header .= "\nContent-Disposition: attachment; filename=\"$userfile_name\"";
$mail_header .= "\n\n$file_content";
$mail_header .= "\n--$boundary--";
mail($to,$subject,$message,$mail_header);
}
?>
 
<html>
<body>
<form method="post" action="mail6.php" enctype="multipart/form-data">
<table border=0 cellpadding=0 cellspacing=0 width="100%">
  <tr>
      <td>Name:</td>
      <td><input type="text" name="name" size=30" /></td>
  </tr>
  <tr>
      <td>Beruf:</td>
      <td><input type="text" name="beruf" size=30" /></td>
  </tr>
  <tr>
      <td>Text:</td>
      <td><textarea cols=20 rows=5 name="text"></textarea></td>
  </tr>
  <tr>
      <td>Foto:</td>
      <td><input type="file" name="userfile" size=30" /></td>
  </tr>
  <tr>
      <td colspan=2><input type="submit" name="senden" value="senden" /></td>
  </tr>
</table>
</form>
</body>
</html>

Всего записей: 585 | Зарегистр. 17-08-2006 | Отправлено: 16:10 04-12-2006
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Borodino
Бинарный аттачмент к письму в скрипте

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:32 04-12-2006
Georgy1



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Уважаемые знатоки языка Perl! Помогите чайнику создать страничку с контактной формой (отправка писем со странички). Я имею такой скрипт(email.cgi):
 
#!/usr/bin/perl
 
# required hidden fields:
# recipient - your e-mail address
# subject - subject of the message
# redirect - url to load when form is submitted
 
# use name="email" for e-mail address field
 
# Check path to your e-mail program and change path if it is different
# from below
$mailprog = '/usr/sbin/sendmail';
 
 
$date=`date +%D`;
$date=~s/\n$//;
 
$formdata=<STDIN>;
$formdata=~s/\s+$//;
 
foreach (split(/&/, $formdata))
{
($name, $value)=split(/=/, $_);
$name=~s/\+/ /g;
$name=~s/%([0-9|A-F]{2})/pack(C,hex($1))/eg;
$value=~s/\+/ /g;
$value=~s/%([0-9|A-F]{2})/pack(C,hex($1))/eg;
 
# if ($value eq "")
    #{
    #&exit($name);
    #}
 
if ($name ne "recipient" && $name ne "subject" && $name ne "redirect")
    {
    push (@print, $name)
    }
    
 
$data{$name}=$value;
}
if ($data{'email'} ne "" && $data{'email'} !~ /^[\w\.-]+@[\w\.-]+$/)
    {
    print "Content-type: text/html\n\n";
    print "<html><head></head><body bgcolor=\"ffffff\">";
    print "Пожалуйста введите правильный e-mail адрес.";
    exit;
    }
 
 
open(MAIL, "|$mailprog -t") || die "Can't open $mailprog!\n";
print MAIL "To: $data{'recipient'}\n";
print MAIL "From: $data{'email'}\n";
 
 #print MAIL "Cc: $data{'email'}\n";
 
if ($data{'subject'})  
{
   print MAIL "Subject: $data{'subject'}\n\n";
}
 
else {
   print MAIL "Subject: WWW Form Submission\n\n";
}
 
foreach (@print)
    {
    print MAIL "$_: $data{$_}\n";
    }
 
 
close MAIL;
 
print "Location:  $data{'redirect'}\n\n";  
 
sub exit
{
local ($name)=@_;
print "Content-type: text/html\n\n";
print "<html><head></head><body bgcolor=\"ffffff\">";
print "Your must fill in <b>$name</b> to process this form.";
print " Please return back and do it. Thank you.";
print "</body></html>";
exit;
}
 
и такая форма:
 
<html>
<head>
<title>Контакт</title>
</head>
<body bgcolor="white" text="black" link="blue" vlink="purple" alink="red">
<p>&nbsp;<table class="namo-sublist" border="0" width="750"><tr>        <td width="625" valign="top">
<form name="contactus" method="post" action="cgi-bin\email.cgi"
enctype="text/plain"><table width="445" align="center"><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>От :</b></font></td><td width="311" align="left"><p><font size="2" face="Century Gothic"><input
type="text" name="name">(Имя отправителя)</font></td></tr><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>E-Mail :</b></font></td><td width="311"><p><font size="2" face="Century Gothic"><input type="text"
name="email">(Ваш E-Mail адрес)</font></td></tr><tr><td width="130" align="right"><p><font size="2" face="Century Gothic"><b>Тема  
:</b></font></td><td width="311" align="left"><p><font size="2" face="Century Gothic"><input
type="text" name="subject" style="text-align:center;"></font></td></tr><tr><td width="130" align="right" valign="top" rowspan="2"><p><font size="2" face="Century Gothic"><b>Сообщение :</b></font></td><td width="311"><font size="2" face="Century Gothic"><textarea name="message"
rows="5" cols="35"></textarea></font></td></tr><tr><td width="311" align="left"><p><font size="2" face="Century Gothic"><input type="submit" value="Послать"><input type="reset" value="Очистить"></font></td></tr></table></form></td>
</tr></table></p>
</body>
</html>
 
Требуется совместить скрипт с формой (отредактировать и то и другое), чтобы все работало и дать небольшую инструкцию ( можно на мыло: niktih@mail.ru )!
Очень надеюсь на вашу поддержку.
Спасибо.

Всего записей: 137 | Зарегистр. 23-11-2004 | Отправлено: 13:13 08-12-2006
Baby9696

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет, подскажите как мне изменить скрипт, чтобы все заполненные поля отправлялись на е-мейл? вот сцылка на страницу, куды надо: http://www.limuzinkazan.ru/search.php?id_marka=18 ну это чтоб наглядно было видно
 
имеются файлы:
в корневике: search.php и feed_forms.php
а так же:
tpl/view/templates/search.tpl
tpl/view/templates/mail_to_zapros.tpl
tpl/view/templates/feed_forms.tpl
 
дайте мне мыло того, кто реально в этом шарит, тут не буду столько выкидывать, или стукните мне плиз в аську 226221596
Заранее Спасиб

Всего записей: 2 | Зарегистр. 29-01-2007 | Отправлено: 19:09 29-01-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Georgy1
смотрим примеры выше, чтобы понять, как передаются переменные из формы в перл и прописываем их там, где нужно в скрипте.
 
Baby9696

Цитата:
подскажите как мне изменить скрипт

примеры выше
 

Цитата:
дайте мне мыло того, кто реально в этом шарит, тут не буду столько выкидывать, или стукните мне плиз в аську 226221596

я очень сомневаюсь, что это кто то будет делать

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:35 29-01-2007
Baby9696

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
я очень сомневаюсь, что это кто то будет делать

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

Код:
 
{*Smarty*}
{*Шаблон страницы поиска*}
{fetch file='inc/top.php'}
 
{include file='_navbar_public.tpl'}
<h4>Поиск</h4>
<p>
<form method = 'GET' action = "search_result.php" enctype="multipart/form-data">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
</head><body bgcolor="441B23" text="#CCCC33"><table width=90% border="0">
<tr>
<td nowrap><b>Марка:</b>
<input type="hidden" name = 'id_marka' value = {$id_marka} /></td><td>{$name_marka}</td>
 
<td nowrap><b> Модель: </b></td>
<td>
{html_options options=$models_list name="model_id" selected=0}        
</td>
</tr>
<tr>
<td nowrap></td>
<td></td>
 
 
<td nowrap><b> Цвет: </b></td>
<td>
{html_options options=$color name="color_id" selected=0}    </td>
</tr>
 
<tr>
<td nowrap><b> Год вып.: </b></td>
<td>
{html_options options=$arr_year name="year_key" selected=0}    
</td>
 
<td nowrap><b> Тип кузова: </b></td>
<td>
{html_options options=$typ_kuzov name="kuzov" selected=0}    
</td>
</tr>
 
<tr>
<td nowrap><b> Цена: </b></td>
<td><input size="8" style="width:35;" maxlength="11" name="price_ot" type="text" /> -  
<input size="8" style="width:35;" maxlength="11" name="price_do" type="text" /> &nbsp; USD
</td>
 
<td nowrap><b> Тип двигателя: </b></td>
<td>
{html_options options=$typ_dvig name="tip_motor" selected=0}    
</td>
</tr>
 
<tr>
<td nowrap><b> Пробег: </b></td>
<td><input size="8" style="width:70;" maxlength="6" name="probeg_ot" type="text" /> - <input size="8" style="width:70;" maxlength="6" name="probeg_do" type="text" /> &nbsp;  км
</td>
 
<td nowrap><b> Привод: </b></td>
<td>
{html_options options=$privod name="privod" selected=0}    
</td>
</tr>
<tr>
<td nowrap><b> Объем двиг. (см<FONT SIZE=-1><SUP>3</SUP></FONT>): </b></td>
<td><input size="8" style="width:70;" maxlength="6" name="v_motor_ot" type="text" /> - <input size="8" style="width:70;" maxlength="6" name="v_motor_do" type="text" /></td>
 
<td nowrap><b> КПП: </b></td>
<td>
{html_options options=$kpp name="kpp" selected=0}    
</td>
</tr>
<tr>
<td nowrap><b> Состояние: </b></td>
<td>
{html_options options=$sost name="sost" selected=0}    
</td>
<td nowrap><b> Руль: </b></td>
<td>
{html_options options=$rul name="rul" selected=0}    
</td>
</tr>
<tr>
<td nowrap><b> Торг: </b></td>
<td>
{html_options options=$torg name="torg" selected=0}    
</td>
 
 
<td nowrap><b> Таможня: </b></td>
<td>
{html_options options=$tamog name="tamog" selected=0}    
</td>
</tr>
</table>
 
<p>
<table class="list_dop" style="width: 50%" >
<tr valign="top">
<td nowrap><b>Наличие фото: </b></td>
    <td><select style="width:150;" name="photo_yes">
    <option value=""></option>
    <option value="1">обязательно</option></select></td>
</tr><tr>
<td nowrap><b>Период: </b></td>
    <td>
    <select style="width:150;" name="stime">
    <option value="0">все время</option>
    <option value="1">сегодня</option>
    <option value="2">2 дня</option>
    <option value="3">3 дня</option>
    <option value="4">4 дня</option>
    <option value="7">неделю</option>
    <option value="14">2 недели</option>
    <option value="21">3 недели</option>
    <option value="30">месяц</option>
    </select>
</td></tr>
<tr valign="top">
<td nowrap><b>Сортировать: </b></td>
<td><select style="width:150;" name="sort">
<option value="0"></option>
<option value="2">по модели</option>
<option value="1" selected = "selected">по цене</option>
<option value="5">по году вып.</option>
<option value="9">по пробегу</option></select>
</td></tr>
</table>
 
 
<p><b>Обязательно наличие:</b>
{html_table loop=$list_dop table_attr='border="0" align="center" width=90%' cols=3}
 
 
 
</td></tr></table>
 
 
<p align = "center"><input  type="submit" name = "search" value = "Искать!" style="width:250;" />
 
</form>
 
</body>
 
 

http://www.limuzinkazan.ru/search_index.php на примере
это поиск автомобилей по базе, а вместо поиска надо сделать заказ, т.е. все, что человек выделил (стоимость, пробег, доп.опции и т.д.) надо отправить на мыло админу, как это сделать?
 
изменение последних 6-7 строчек на:

Код:
 
<p align = "center">
<form method="POST" action="feed_forms.php">
<p><input type="submit"  value="Отправить запрос на машину"></p>
</form>
 

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

Всего записей: 2 | Зарегистр. 29-01-2007 | Отправлено: 23:55 29-01-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Baby9696

Цитата:
не помогает

догадайся почему.. отсылаются только те данные, что попали между <form> и </form>
постишь на скрипт с вот таким, к примеру, кодом
Perl, PHP: отправка формы на e-mail


----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 00:04 30-01-2007
Romano



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а есть готовый скрипт с защитой от спама?  
т.е. форма отправки на емейл с защитной картинкой.
 
 


----------
Веб-мастер! Обрати внимание на этот сервис! С ним продвигать сайты стало легче!

Всего записей: 2345 | Зарегистр. 13-02-2002 | Отправлено: 12:26 27-02-2007
SStudio



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Очень непонятно????
Вот простейшая форма
 
<FORM NAME="mailer" METHOD="post" ACTION="">
<INPUT TYPE="text" NAME="Email" size="24">
<INPUT TYPE="text" NAME="Name" size="24">
<TEXTAREA NAME="Message" COLS="30" ROWS="5">
<INPUT TYPE = "submit" VALUE = "Отправить Сообщение">
</FORM>
 
Обьясните на пальцах как прикрутить к ней этот PHP.

Всего записей: 93 | Зарегистр. 10-10-2006 | Отправлено: 21:25 08-03-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
SStudio

Цитата:
Очень непонятно????  

это ты нас спрашиваешь?
 

Цитата:
Обьясните на пальцах как прикрутить к ней этот PHP

а всмотреться не пробовал?
данные будут в массиве $_POST

Код:
 <?PHP
$ToEmail  = "имя <мыло>";
$Subject  = "PHP ist toll Хорошо";
$Message = $_POST['Email'].':'.$_POST['Name'].':'.$_POST['Message'];
$Headers  = "From: имя<мыло>\n";
$Headers .= "Content-Type: text/html;\n";
$Headers .="Content-Transfer-Encoding: 8bit\n";
mail($ToEmail, $Subject, $Message, $Headers);
?>



----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:55 08-03-2007
Qwezar



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Скажите, а функция mail() с денвера не работает?

Всего записей: 360 | Зарегистр. 31-12-2006 | Отправлено: 16:12 16-03-2007 | Исправлено: Qwezar, 16:13 16-03-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qwezar

Цитата:
Скажите, а функция mail() с денвера не работает?

а при чем тут функция? если нет почтовика локально, то отсылать ничего не будет

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 16:18 16-03-2007
ShafMAN

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Qwezar
http://faq.dklab.ru/denwer/#h30-27

Всего записей: 125 | Зарегистр. 09-01-2005 | Отправлено: 09:13 19-03-2007
Grendle



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Блин. Всё равно не понимаю как отправить. Я сейчас сойду с ума!!!  
Как сделать самую простую форму без проверок на данные и особенно без всяких "Спасибо блаблабла"?!  
Помогите пожалуйста!

Всего записей: 157 | Зарегистр. 01-04-2002 | Отправлено: 13:39 02-04-2007
IFKey



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Скажите, а функция mail() с денвера не работает?

Денвер кидает все письма сюда: WebServers\tmp\!sendmail\

Всего записей: 331 | Зарегистр. 20-03-2007 | Отправлено: 15:35 02-04-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Grendle

Цитата:
Как сделать самую простую форму без проверок на данные и особенно без всяких "Спасибо блаблабла"?!  
Помогите пожалуйста

посмотреть первые посты.. там все есть

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 19:43 02-04-2007
CL

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите пожалуста с PHP кодом, штобы отправить данную форму на e-mail:  
 
 
Подробнее...

Всего записей: 2 | Зарегистр. 09-04-2007 | Отправлено: 23:28 09-04-2007 | Исправлено: Cheery, 23:34 09-04-2007
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CL
а что, примеры выше посмотреть сложно? они же явным образом написаны..

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 23:35 09-04-2007
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28

Компьютерный форум Ru.Board » Интернет » Web-программирование » Perl, PHP: отправка формы на e-mail


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru