84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574
1

Как правильно организовать сообщение о том что мыло ушло...

29.07.2010, 18:24. Показов 798. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Всем привет!!!!!!!!!
Коллеги, подскажите как правильно сделать следующее:

у меня есть страница.пхп
на ней всяческий хтмл текст и строка -

<? include "mail.php" ?>

содержимое mail.php -

PHP
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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
$adresat = "аваа@gmail.com";  //замените на свой e-mail
$status = "Администрация"; // замените на свой статус/должность
$msg = "Спасибо, Ваше сообщение было отправлено и мы обязательно вам ответим!<br><p align=right>$status</p>";  //Замените на свое сообщение, выводимое при отправке
 
// если вы не знаете php/html не изменяйте код ниже:
$you = "$status. E-mail:&nbsp;$adresat";
if (isset($_POST['submit'])) {
   $email = $_POST['email'];
   $name = $_POST['name'];
   $message = $_POST['message'];
   if(eregi("^[a-zA-Z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$",$email))
   {
   if(empty($name)) echo "Введите ваше имя";
   else
   {
   mail("$adresat", "Сообщение с сайта", "От: $name\nАдрес: $email\nСообщение:\n\n$message");
   echo "<b>$msg<b>\n";
   }
   } else {
   echo "E-mail неправильно введен или содержит недопустимые символы. Пожалуйста вернитесь и заполните все поля правильно";
   }
}
else {
?>
<form action="<? echo $PHP_SELF?>" method=POST>
<table width=100%>
<tr>
  <td align="left">Ваше имя :</td>
  <td align="left"><input type=text name=name size=25></td></tr>
 
<tr>
  <td align="left">Ваш e-mail: </td>
  <td align="left"><input type=text name=email size=25></td></tr>
<tr>
  <td align="left">Ваше сообщение:</td>
  <td align="left"><textarea cols=40 rows=3 name=message></textarea></td>
  </tr>
</table>
<input name="submit" type=submit value="Отправить">
</form>
<?php
} // end "else" and end of this script)
?>
скрипт пашет, все гуд, но большое не удобство в том, что, после отправки мыла, выводится строка -
Ваше сообщение было отправлено и мы обязательно вам ответим!
и чтоб опять появились формы для ввода сообщения и имейла надо не просто обновить страницу, а перезайти в нее.
Скажите пж, Какие есть стандартные решения?????
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.07.2010, 18:24
Ответы с готовыми решениями:

Как можно сделать так, что бы при запуске excel файла с макросом не выводилось сообщение о том что макросы могут содержать вирусы?
Может кто нибудь знает как можно сделать так, что бы при запуске excel файла с макросом не...

Как получить сообщение о том, что была нажата кнопка RADIOBUTTON?
Здравствуйте! Как получить сообщение о том, что была нажата одна из кнопок RADIOBUTTON? То есть,...

Проблема в том, что MessageBox не правильно работает!
{ public partial class Form1 : Form { public List&lt;string&gt; qa = new...

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

6
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
29.07.2010, 18:37 2
разделяем на два файла:

form.html
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<form action="send.php" method=POST>
<table width=100%>
<tr>
  <td align="left">Ваше имя :</td>
  <td align="left"><input type=text name=name size=25></td></tr>
 
<tr>
  <td align="left">Ваш e-mail: </td>
  <td align="left"><input type=text name=email size=25></td></tr>
<tr>
  <td align="left">Ваше сообщение:</td>
  <td align="left"><textarea cols=40 rows=3 name=message></textarea></td>
  </tr>
</table>
<input name="submit" type=submit value="Отправить">
</form>
send.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
$adresat = "аваа@gmail.com";  //замените на свой e-mail
$status = "Администрация"; // замените на свой статус/должность
$msg = "Спасибо, Ваше сообщение было отправлено и мы обязательно вам ответим!<br><p align=right>$status</p>";  //Замените на свое сообщение, выводимое при отправке
 
// если вы не знаете php/html не изменяйте код ниже:
$you = "$status. E-mail:&nbsp;$adresat";
if (isset($_POST['submit'])) {
   $email = $_POST['email'];
   $name = $_POST['name'];
   $message = $_POST['message'];
   if(eregi("^[a-zA-Z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$",$email))
   {
   if(empty($name)) echo "Введите ваше имя";
   else
   {
   mail("$adresat", "Сообщение с сайта", "От: $name\nАдрес: $email\nСообщение:\n\n$message");
   echo "<b>$msg<b>\n";
   }
   } else {
   echo "E-mail неправильно введен или содержит недопустимые символы. Пожалуйста вернитесь и заполните все поля правильно";
   }
}
header('Location: form.html');
1
84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574
29.07.2010, 19:20  [ТС] 3
спасибо, оперативно))))

сделал так как ты написал + заменил <? include "mail.php" ?> на <? include "send.php" ?>
не отображает поля ввода.
Думал может ты забыл в самом низу send.php поставить закрывающий тег пхп - ?>
поставил, тоже не отображает
0
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
29.07.2010, 19:43 4
Цитата Сообщение от FreeWay Посмотреть сообщение
сделал так как ты написал + заменил <? include "mail.php" ?> на <? include "send.php" ?>
блин, я забыл что ты инклудишь
вообщем тебе надо инклудить не send.php, а form.html
Цитата Сообщение от FreeWay Посмотреть сообщение
Думал может ты забыл в самом низу send.php поставить закрывающий тег пхп - ?>
в конце страницы его можно не ставить
1
84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574
29.07.2010, 20:08  [ТС] 5
теперь порядок, правда нет сообщения все отправлено, ну и фиг с ним, страница перегружена, значит отправило)

тут send.php еще надо подправить так header('Location: komphelp.php');
0
701 / 573 / 59
Регистрация: 18.11.2008
Сообщений: 2,147
29.07.2010, 20:24 6
Цитата Сообщение от FreeWay Посмотреть сообщение
правда нет сообщения все отправлено
form.php
PHP
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
<?php
$msg = array (
    'ok' => "Спасибо, Ваше сообщение было отправлено и мы обязательно вам ответим!<br><p align=right>$status</p>",
    'name' => "Введите ваше имя",
    'mail' => "E-mail неправильно введен или содержит недопустимые символы. Пожалуйста вернитесь и заполните все поля правильно"
);
if ( isset($_GET['notify']) ) {
    echo @$msg[$_GET['notify']];
}
?>
<form action="send.php" method=POST>
<table width=100%>
<tr>
  <td align="left">Ваше имя :</td>
  <td align="left"><input type=text name=name size=25></td></tr>
 
<tr>
  <td align="left">Ваш e-mail: </td>
  <td align="left"><input type=text name=email size=25></td></tr>
<tr>
  <td align="left">Ваше сообщение:</td>
  <td align="left"><textarea cols=40 rows=3 name=message></textarea></td>
  </tr>
</table>
<input name="submit" type=submit value="Отправить">
</form>
send.php
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?php
$adresat = "аваа@gmail.com";  //замените на свой e-mail
$status = "Администрация"; // замените на свой статус/должность
 
// если вы не знаете php/html не изменяйте код ниже:
$you = "$status. E-mail:&nbsp;$adresat";
if (isset($_POST['submit'])) {
   $email = $_POST['email'];
   $name = $_POST['name'];
   $message = $_POST['message'];
   if(eregi("^[a-zA-Z0-9\._-]+@[a-z0-9\._-]+\.[a-z]{2,4}\$",$email))
   {
   if(empty($name)) $msg = 'name';
   else
   {
   mail("$adresat", "Сообщение с сайта", "От: $name\nАдрес: $email\nСообщение:\n\n$message");
   $msg = 'ok';
   }
   } else {
   $msg = 'mail';
   }
}
header('Location: komphelp.php?notify=' . $msg);
инклудим form.php
1
84 / 84 / 19
Регистрация: 17.12.2007
Сообщений: 574
30.07.2010, 13:06  [ТС] 7
спасибо огромное, все теперь отлично)
Хотел тебе написать отзыв, да не дает, пишет еще кому-то надо поставить отзыв...

В наше время не много людей которые готовы придти на помощь )
0
30.07.2010, 13:06
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
30.07.2010, 13:06
Помогаю со студенческими работами здесь

Вывести сообщение о том что if не сработал
Привет, выходит ошибка, нужно чтоб если нет положительных элементов выводилось сообщение, не могу...

Сообщение о том что не правельное число
Если человек вводит 100, то перенаправляет на другую страницу, если 101 то же перенаправляет но еще...

Как отправит мыло 1000 подписчикам? Что лучше использовать ASP или Delphi?
При отправке мыла с помощью ASP сообщения отпавляются не всем адресатам, а только 10 из бд, и все...

Создание лога копирования файлов: что, куда и сколько времени на это ушло
Привет ВСЕМ может кто знает есть ли возможность при копировании вести лог не только откуда ведется...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru