imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 11.09.2005, 23:26     # 1
killhunter
Junior Member
 
Аватар для killhunter
 
Регистрация: 24.10.2002
Сообщения: 68

killhunter Известность не заставит себя ждать
Заполнение формы->показ данных "echo"->отправка mail()

Здравствуйте.
Подскажите, пожалуйста.
На данный момент данные с сайта отправляются через форму с помощью функции mail() (PHP).

Нужно, чтобы внесенные пользователем данные отображались на сайте и только после этого отправлялись через mail()

В принципе конструкция <?php echo $переменная ?> отображает ранее внесенные в форму данные. Но как сделать, чтобы эти данные можно было дальше отправить с помощью mail()

Заранее спасибо.
__________________
Через терни к звездам!
killhunter вне форума  
Старый 12.09.2005, 13:35     # 2
Naked
::VIP::
 
Аватар для Naked
 
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194

Naked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked Сэнсэй
Что-то я вопрос не понял видимо...
Если нужно, чтобы сразу после показа данных отправлялось на мыло - то сразу после echo $переменная пишем mail ("адрес", $переменная), а если нужно чтобы сначала отобразилось, а потом по нажатию кнопки отправилось, то делаем <form action="страница" method=post> дальше <input type=hidden name="имя переменной" value="переменная"> и так для всех переменных, которые должны отправиться по mail, затем <input type=submit name=submitmail ......></form> и в принципе все - следующим шагом проверяешь в начале скрипта переменную submitmail и отправляешь mail'ом все переменные, которые передал hidden'ом, если что не так, сорри
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным.
Naked вне форума  
Старый 12.09.2005, 18:59     # 3
Heo
::VIP::
 
Регистрация: 10.03.2003
Адрес: /dev/null
Сообщения: 2 900

Heo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех ГуруHeo Отец (мать) всех Гуру
Цитата:
The_naked:
<input type=hidden name="имя переменной" value="переменная">
Поправка:
Код HTML:
<input type=hidden name="имя переменной" value="значение переменной">
Пример:
Код HTML:
<input type=hidden name="to" value="123@123.com">
Переменная $_POST['to'] (или просто $to, если Register globals = On) будет иметь значение 123@123.com
Heo вне форума  
Старый 13.09.2005, 01:28     # 4
Trotil
Advanced Member
 
Аватар для Trotil
 
Регистрация: 21.04.2005
Адрес: град Москва
Сообщения: 431

Trotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собой
И без меня все уже написано, но стоило бы вмешиваться, если бы не одно обстоятельство...
Цитата:
Сообщение от Heo
Переменная $_POST['to'] (или просто $to, если Register globals = On) будет иметь значение 123@123.com
Никаких ЕСЛИ!!! В любом случае используйте $_POST['to'] . Принципиально! Здесь затрагиваются не проблема переноса сайта на сервак с Register globals = Off, а затрагиваются вопросы безопасности! Во всех нормальных учкебниках и спецстатьях указываются ряд правил (причем несложных), которые резко уменьшают вероятностность взлома вашего сайта. Одно из таких правил я описал выше. Считайте, что наружение этих правил сродни пересечению двойной сплошной или проезда на красный сигнал светофора. Следует это помнить!
Trotil вне форума  
Старый 13.09.2005, 08:16     # 5
Naked
::VIP::
 
Аватар для Naked
 
Регистрация: 15.05.2005
Адрес: Питер
Сообщения: 1 194

Naked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked СэнсэйNaked Сэнсэй
Цитата:
Trotil:
Никаких ЕСЛИ!!! В любом случае используйте $_POST['to']
А я бы использовал $_REQUEST['to'] - универсальней, никогда не знаешь, каким именно методом будешь передавать параметры, а есди таковых много, то потом не очень просто менять $_POST на $_GET или наоборот...
__________________
Чтобы воля стала действующим началом, тело должно быть совершенным.
Naked вне форума  
Старый 13.09.2005, 17:55     # 6
plohich
::VIP::
 
Аватар для plohich
 
Регистрация: 12.10.2003
Пол: Male
Сообщения: 593

plohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собойplohich Имеются все основания чтобы гордиться собой
Цитата:
The_naked:
А я бы использовал $_REQUEST['to'] - универсальней, никогда не знаешь, каким именно методом будешь передавать параметры, а есди таковых много, то потом не очень просто менять $_POST на $_GET или наоборот...
Если не знаешь, то да, но если решено что данные отправляются только через POST, то не стоит делать ошибок, более того, это хороший путь отлавливать кульхацкеров. Например:
Код:
if ((isset($_GET['var']))or(isset($_COOKIE['var']))) {
 // сообщаем админу о нестандартных переменных (читай попытка взлома)
} elseif (isset($_POST['var'])) {
 //do something
}
отлично помогает отлавливать разных умников в многопользовательских системах.
__________________
...за пачку печенья и банку варенья...
plohich вне форума  
Старый 15.09.2005, 23:22     # 7
killhunter
Junior Member
 
Аватар для killhunter
 
Регистрация: 24.10.2002
Сообщения: 68

killhunter Известность не заставит себя ждать
Уф. Спасибо большое за подробные рекомендации и помощь.
Наконец-то прерву (хотя бы на время), поток спама через сайт
Буду разбираться и делать.
__________________
Через терни к звездам!
killhunter вне форума  
Старый 16.09.2005, 11:06     # 8
<Descriptor>
Junior Member
 
Регистрация: 27.09.2004
Сообщения: 51

<Descriptor> Путь к славе только начался
Цитата:
plohich:
Если не знаешь, то да, но если решено что данные отправляются только через POST, то не стоит делать ошибок, более того, это хороший путь отлавливать кульхацкеров.
Использование $_POST, конечно, дело правильное. Но разве можно "сломать сайт" в таком простейшем случае (когад всего-лишь идет отправка данных формы на мыло)?
<Descriptor> вне форума  
Старый 16.09.2005, 11:20     # 9
Trotil
Advanced Member
 
Аватар для Trotil
 
Регистрация: 21.04.2005
Адрес: град Москва
Сообщения: 431

Trotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собойTrotil Имеются все основания чтобы гордиться собой
Нет, конечно, нельзя. Но надо вырабатывать для себя такой стиль программирования в соответствии с рекомендациями. Тогда, потом, в более уязвимом месте ты никогда не совершишь такой ошибки, которая может привести к плачевным последствиям...

P.S. Я обучаюсь на специалиста по информационной безопасности, и почти все преподаватели ставят человеческий фактор (то бишь глупость или форменное наплевательство на элементарные правила) ставят превыше всего остальным факторам. И такое отношение распространено гораздо больше, чем можно предполагать.
Trotil вне форума  

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 03:46.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.