Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.03.2010, 01:20   #1
Syltan
Заблокирован
 
Регистрация: 27.08.2009
Сообщений: 569
По умолчанию Отправка письма посредством php

Написал код для заказа диска через сайт, программа не срабатывает в файле пхп, выдаёт ошибку на 7 строке: Notice: Undefined variable: pass in z:\home\localhost\www\php\obrabotka .php on line 7

HTML
Код HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link rel="stylesheet" type="text/css" href="s.css">
  <title>Тег SPAN</title>
 <body>
<table  align="center" border="1" width="400" align="center" bordercolor="black"
cellpadding="20px" >
<tr>
<td>
<form action="obrabotka.php" method="POST" name="form1">
<p><b>Введите своё ФИО</b><br>
<input type="text" name="fio" width="20">
</p>

<p><b>Введите свой пароль</b><br>
<input type="password" name="pass" width="20">
</p>

<p><b>Введите свой e-mail</b><br>
<input type="text" name="email" width="20">
</p>


<p><b>Выберете формат диска</b> <br>
<input type="radio"  name="format" value="1" checked>DVD<br>
<input type="radio"  name="format" value="1">CD<br>
</p>


<p><b>Выберете курсы для заказа</b> <br>
<input type="checkbox"  name="site" value="" checked>Курс по созданию сайта<br>
<input type="checkbox"  name="book" value="" checked>Курс по созданию электронной книги<br>
</p>


<p><b>Выберете тип доставки</b> <br>
<select name="delivery">
<option>Срочная</option>
<option>Обычная</option>
</select>
</p>


<p><b>Введите адресс доставки</b> <br>
<textarea name="address" cols="40" rows="5">
</textarea>
<p>
<input type="submit" name="button" value="Отправить заказ">

</p>

</form>
</td>
</tr>
</table>


</body>
</HTML>

obrabotka.php
Код:
<?php
if(isset($site)) {$site="Да";} else{$site="Нет";}
if(isset($book)) {$book="Да";} else{$book="Нет";}

$v = mail("slava2009@mail.ru","Заказ с сайта",
"На сайте был сделан заказ. \n Заказ пришёл от:
$fio \n Его пароль:$pass \n Его email:$email \n
 Выбрал формат диска:$format Выбрал курсы по созданию сайта:
$site \n  Курс по созданию электронных книг:$book \n
Выбрал тип доставки:$delivery\n Адресс для доставки:
$address","Content-type:text/plain; charset = Windows-1251\r\n");

if($v = "true" ) {echo ' Ваше сообщени успешно отправлено!';}
?>
Syltan вне форума Ответить с цитированием
Старый 14.03.2010, 03:30   #2
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

http://www.phpfaq.ru/globals

Читайте.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 14.03.2010, 17:13   #3
VY_CMa
Пользователь
 
Аватар для VY_CMa
 
Регистрация: 13.03.2010
Сообщений: 38
По умолчанию

Значения переменным не присвоены...
VY_CMa вне форума Ответить с цитированием
Старый 14.03.2010, 17:28   #4
Syltan
Заблокирован
 
Регистрация: 27.08.2009
Сообщений: 569
По умолчанию

Что-то не выходит, подскажите, как можно исправить.
Syltan вне форума Ответить с цитированием
Старый 14.03.2010, 21:23   #5
mrgrudge
Форумчанин
 
Аватар для mrgrudge
 
Регистрация: 20.02.2010
Сообщений: 229
По умолчанию

$pass = "че то там";
$v = mail("slava2.....

вот так)
вам пхп об этом и рассказывает, что не может понять что за переенная такая $pass, ибо ее до функции мейл не объявляли..вроде так.
думай как баг, действуй как баг, и ты найдешь баг )
mrgrudge вне форума Ответить с цитированием
Старый 14.03.2010, 22:15   #6
VY_CMa
Пользователь
 
Аватар для VY_CMa
 
Регистрация: 13.03.2010
Сообщений: 38
По умолчанию

Пример ФИО
if($_POST['fio']) {$fio = $_POST['fio'];} else{$error="true";}
по аналогии проделайт со всеми передаваемыми элементами и будет счастье
VY_CMa вне форума Ответить с цитированием
Старый 14.03.2010, 22:35   #7
Syltan
Заблокирован
 
Регистрация: 27.08.2009
Сообщений: 569
По умолчанию

Вроде так сработало:
HTML
Код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
 <head>
  <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<link rel="stylesheet" type="text/css" href="s.css">
  <title>Тег SPAN</title>
  </head>
 <body>
<table  align="center" border="1" width="400" align="center" bordercolor="black"
cellpadding="20px" >
<tr>
<td>
<form action="obrabotka.php" method="POST" name="form1">
<p><b>Введите своё ФИО</b><br>
<input type="text" name="fio" width="20">
</p>
 
<p><b>Введите свой пароль</b><br>
<input type="password" name="pass" width="20">
</p>
 
<p><b>Введите свой e-mail</b><br>
<input type="text" name="email" width="20">
</p>
 
 
<p><b>Выберете формат диска</b> <br>
<input type="radio"  name="format" value="DVD" checked>DVD<br>
<input type="radio"  name="format" value="CD">CD<br>
</p>
 
 
<p><b>Выберете курсы для заказа</b> <br>
<input type="checkbox"  name="site" value="1" checked>Курс по созданию сайта<br>
<input type="checkbox"  name="book" value="1" checked>Курс по созданию электронной книги<br>
</p>
 
 
<p><b>Выберете тип доставки</b> <br>
<select name="delivery">
<option value="1" checked="checked">Срочная</option>
<option value="2">Обычная</option>
</select>
</p>
 
 
<p><b>Введите адресс доставки</b> <br>
<textarea name="address" cols="40" rows="5">
</textarea>
<p>
<input type="submit" name="button" value="Отправить заказ">
 
</p>
 
</form>
</td>
</tr>
</table>

</body>
</HTML>
php;
Код:
<?php
if(isset($_POST['fio']) && !empty($_POST['fio'])) $fio = $_POST['fio']; else die('Поле ФИО не заполнено');
if(isset($_POST['pass']) && !empty($_POST['pass'])) $pass = $_POST['pass']; else die('Поле Пароль не заполнено');
if(isset($_POST['email']) && !empty($_POST['email'])) $email = $_POST['email']; else die('Поле Email не заполнено');
if(isset($_POST['format']) && !empty($_POST['format'])) $format = $_POST['format']; else die('Поле CD/DVD не заполнено'); 
if(isset($_POST['delivery']) && !empty($_POST['delivery'])) $delivery = $_POST['delivery']; else die('Не выбран тип доставки');
if(isset($_POST['site'])) $site = "Да"; else $site = "Нет";
if(isset($_POST['book'])) $book = "Да"; else $book = "Нет";
 
$v = mail("ser200@mail.ru ", "Заказ с сайта",
"На сайте был сделан заказ. \n Заказ пришёл от:
$fio \n Его пароль:$pass \n Его email:$email \n
 Выбрал формат диска:$format Выбрал курсы по созданию сайта:
$site \n  Курс по созданию электронных книг:$book \n
Выбрал тип доставки:$delivery\n Адресс для доставки:
$address","Content-type:text/plain; charset = Windows-1251\r\n");
 
if($v = true ) {echo ' Ваше сообщение успешно отправлено!';}
?>
У меня хостинг на hut.ru я загрузил эти 2 файла на сервер. После нажатия на кнопку, мне написалось что отправило, но письмо не пришло на почту маил.ру, смысл тогда этого кода?Я не хочу рассылать письма, я хочу чтоб мне пришло письмо от человека который заполгнит эту форму. Человек заполнил форму, отправил нажав на кнопку ,а мне пришло на почту письмо. Как это сделать?
Syltan вне форума Ответить с цитированием
Старый 15.03.2010, 02:02   #8
VY_CMa
Пользователь
 
Аватар для VY_CMa
 
Регистрация: 13.03.2010
Сообщений: 38
По умолчанию

Да вобщем то так это и работает, возможно письмо застряло по пути, бывают задержки, но это вина уже не скрипта
VY_CMa вне форума Ответить с цитированием
Старый 15.03.2010, 04:15   #9
Johnatan
Antimoderаtoris
Участник клуба
 
Регистрация: 08.02.2008
Сообщений: 1,251
По умолчанию

Цитата:
Сообщение от Syltan Посмотреть сообщение
много текста
Попробуйте приобрести платный хостинг. Должно помочь.
Да, кстати, gmail.com не примет ваше письмо, если ваш сервер не зарегистрирован официально как почтовый. Это так, на будущее.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
Johnatan вне форума Ответить с цитированием
Старый 17.03.2010, 14:57   #10
Merlak
Новичок
Джуниор
 
Регистрация: 25.04.2009
Сообщений: 1
По умолчанию

У меня был раньше скрипт, который отправлял письмо с предварительной проверкой правильности написания почтового ящика и логина. И ещё можно было несколько полей дополнительных вставить..А теперь не знаю где он, может у кого есть похожий скрипт??
___________________
http://www.merlak.ru
___________________
Merlak вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отправка письма на почту! }{oт@бь)ч PHP 8 13.01.2010 21:27
отправка электронного письма на E-mail TaYgA Помощь студентам 3 13.12.2009 12:37
Отправка письма с вложением Stanislav PHP 1 06.04.2009 13:44
отправка письма joker Win Api 0 14.02.2009 10:46
Отправка письма Ксеноцид PHP 1 07.05.2008 15:57