Помогите пожалуйста с формой для отправки на е-mail @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 22 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Neto
новый человек
0
Сообщения: 75
Зарегистрирован: 28.10.02
Откуда: Украина
Заголовок сообщения: Помогите пожалуйста с формой для отправки на е-mail
Сообщение Добавлено: 25 Август 2003, 07:11:01 
Здраствуйте, уважаемые дизайнеры!

Подскажите пожалуйста как сделать кнопку, что бы при ее нажатии вся информация с полей формы отправлялась на определенный е-mail. Поля будут разные - checkbox, list/Menu, RadioButton и др.
Сейт без использования РНР. Можно ли запрограммировать отправку кнопкой содержимого формы средствами самого НТML или с помощью какого-то java scripta?

Буду очень благодарна за все советы.

С наилучшими пожеланиями,
Ольга :lady:
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 25 Август 2003, 08:16:31 
можно, но работать будет только с оутлоком, причем не все, что ты хочешь. оно тебе надо?

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
CutCopyPaste Муж.
соучастник
0
Сообщения: 516
Зарегистрирован: 21.06.03
Откуда: Москва
Сообщение Добавлено: 25 Август 2003, 09:35:15 
Neto, какой хостинг?
если narod.ru, то подскажу.

_________________
Пьяный русский хакер практически непобедим!
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 25 Август 2003, 12:40:45 
Neto,
для корректного ответа нужно знать, что за хостинг.
Потому как для отправки почты нужен почтовый сервер.
Если провайдер хостинга тебе предоставляет такую услугу, то всё хорошо.
Способ предложенный Long подразумевает (если я правильно понял, о чём речь), что отправляться почта будет с почтовой программы посетителя (т.е. установленной на его компьютере), причём только в том случае если у посетителя стоят Windows и Outlook (используется как ActiveX-элемент).
SPiRiT
новый человек
0
Сообщения: 19
Зарегистрирован: 01.10.02
Откуда: Москва
Сообщение Добавлено: 25 Август 2003, 16:07:17 
Skeeve, я вот мимо шел, прочитал и теперь сам заинтересовался: а что ты зпособ такой предлагаешь? Я был уверен, что Long предлагает вариант с "mailto:". А с ActiveX это как? На VBS что ли вставки клиентские делать?
Neto
новый человек
0
Сообщения: 75
Зарегистрирован: 28.10.02
Откуда: Украина
Сообщение Добавлено: 25 Август 2003, 16:57:08 
Значит объясню в чем дело:
этот сайт я делаю не для себя, а под заказ. Он будет явно не на narod.ru, а на нормальном хостинге в зоне сom.
Сделать эту форму с отправкой на е-мейл было не моей инициативой, а требованием заказчика. Там будет страница чем-то похожая на анкету с множеством разных полей. При нажатии на кнопку "submit" заказчик хочет, что бы все данные с полей отпрвлялись ему на е-мейл, но не через почтовую программу пользователя (что бы пользователь впринципе и не знал что данные отпрвляются, просто при нажатии на кнопочку он должен перейти на следующую странчку).
Можно ли вообще такое сделать или нет? :confused:
Всем спасибо за помощь! :lady:
SPiRiT
новый человек
0
Сообщения: 19
Зарегистрирован: 01.10.02
Откуда: Москва
Сообщение Добавлено: 25 Август 2003, 17:40:24 
Neto, ну да, это очень легко сделать, но только при условии, что на хостинге будет доступен скриптинг (Perl, PHP или чем там еще балуются...).
На PHP, к примеру это будет вообще примерно так:
Код:
foreach ($_GET as $key => $value)
    $msg .= "$key = $value\n";
mail("vasya@doma.ru", "Анкета", $msg);
Protoss
соучастник
0
Сообщения: 544
Зарегистрирован: 15.05.02
Откуда: Moscow
Сообщение Добавлено: 25 Август 2003, 18:19:20 
ну не всё так примитивно . Да и письма через GET лучше не передавать ………. :)

_________________
I'm SOLDIER
@TSV
постоянный участник
11
Сообщения: 4736
Зарегистрирован: 08.05.03
Сообщение Добавлено: 25 Август 2003, 18:44:54 
Protoss, ну и что? Зато принцип работы проиллюстрирован абсолютно правильно. :gent:
Protoss
соучастник
0
Сообщения: 544
Зарегистрирован: 15.05.02
Откуда: Moscow
Сообщение Добавлено: 25 Август 2003, 20:43:59 
это наверно специфика работы сказывается , но ,ИМХО , организовать отправку инфы куда-либо - это только часть дела , причём меньшая . А основная часть (и по трудоёмкости , и по количеству кода) - сделать это так , чтоб никто через эту отправку "нахулиганить" не мог ……….
Но это не более чем ИМХО …………

_________________
I'm SOLDIER
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 25 Август 2003, 21:40:26 
SPiRiT,
в Windows все приложения Office могут быть запущены как элементы ActiveX. Через JScript (так называется версия JavaScript от Microsoft).
Т.е. можно сделать так: берём текст, открываем Word, создаём файл, сохраняем файл на диск, закрываем Word.
От юзера только указать имя файла, остальное скрипт. В почте возможно удастся сделать не спрашивая юзера и не выводя окно приложения на экран (в приведённом коде за это отвечает строка ExcelSheet.Application.Visible = true; только она делает окно как раз видимым).
С Outlook почту не делал, обычно всё-таки почтовым сервером, а вот приведённый пример с Word'ом плюс аналогичный с Excel делал.
Код приблизительно такой:
Код:
ExcelApp = new ActiveXObject("Excel.Application");
ExcelSheet = new ActiveXObject("Excel.Sheet");

ExcelSheet.ActiveSheet.Name = "Стишок";
ExcelSheet.Application.Visible = true;

ExcelSheet.Application.Caption = "А в Excel тоже можно задать заголовок!..";
ExcelSheet.Application.StatusBar = "… и строку состояния тоже можно задать!";

ExcelSheet.ActiveSheet.Cells(1,1).Value = "Я поэт, зовусь я Цветик,";
ExcelSheet.ActiveSheet.Cells(2,1).Value = "От меня вам всем приветик!";
ExcelSheet.ActiveSheet.Cells(4,1).Value = "Пользователь = " + ExcelApp.UserName;
ExcelSheet.ActiveSheet.Cells(5,1).Value = "ОС = " + ExcelApp.OperatingSystem;
ExcelSheet.ActiveSheet.Cells(6,1).Value = "Имя приложения = " + ExcelApp.Name;
ExcelSheet.ActiveSheet.Cells(7,1).Value = "Версия приложения = " + ExcelApp.Version;
ExcelSheet.ActiveSheet.Cells(8,1).Value = "Сборка = " + ExcelApp.Build;
ExcelSheet.ActiveSheet.Cells(9,1).Value = "Активный принтер = " + ExcelApp.ActivePrinter;
ExcelSheet.ActiveSheet.Cells(10,1).Value = "Путь сохранения файлов = " + ExcelApp.DefaultFilePath;
ExcelSheet.ActiveSheet.Cells(11,1).Value = "Памяти всего = " + ExcelApp.MemoryTotal;
ExcelSheet.ActiveSheet.Cells(12,1).Value = "Памяти занято = " + ExcelApp.MemoryUsed;
ExcelSheet.ActiveSheet.Cells(13,1).Value = "Памяти свободно = " + ExcelApp.MemoryFree;
ExcelSheet.ActiveSheet.Cells(14,1).Value = "Стандартный шрифт = " + ExcelApp.StandardFont;

ExcelSheet.Application.GetSaveAsFileName;
ExcelSheet.Application.Quit;

Но ИМХО всё-таки не самый надёжный способ. Он лучше подходит для интранет-систем, где есть корпоративный стандарт на то, что есть на компьютере пользователя. Собственно, мы для этого и использовали (создание отчётов в Excel на основе данных взятых из СУБД IBM DB2 через Java Servlet).
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 25 Август 2003, 21:46:17 
SPiRiT,
ИМХО для указанного способа отправки (через функцию mail()) у хостера ещё должен входит в эккаунт почтовый сервер.
В Штатах, например, часто бывают хостинги, где почтовый сервер входит только в старшие (т.е. более дорогие) варианты, а тут вроде такая формулировка, что сервак может быть и в Штатах.
vexoid
новый человек
0
Сообщения: 295
Зарегистрирован: 15.12.02
Откуда: msk
Сообщение Добавлено: 26 Август 2003, 04:08:58 
совершенно неправильное утверждение про почтовый сервер... в настройках можно прописать и smtp...
сендмейл совсем не обязателен... и что значит почтовый сервер ? свой персональный ? накой это... совсем не обязательно...

_________________
lost world... lost life... lost tomorrow... only night
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 26 Август 2003, 08:37:56 
vexoid,
разъясните поподробнее, что Вы хотите сказать.
Я не являюсь специалистом по отправке почты и с удовольствием научусь новому способу :wink:
SPiRiT
новый человек
0
Сообщения: 19
Зарегистрирован: 01.10.02
Откуда: Москва
Сообщение Добавлено: 26 Август 2003, 09:31:57 
Ребята, я извиняюсь, и мнение мое, конечно, субъективно, но вы делаете из мухи слона.
* Отправка почты с сайта - банальнейшая операция, любой платный хостинг предоставляет возможность отправки со своего smtp-сервера (может, и не своего - не важно).
* Переслать содержимое формы тем способом, что я описал - как два байта обнулить.

Человеку нужно просто ОТПРАВИТЬ, а мы тут начинаем про национальные особенности хостинга, настройки smtp...
Protoss, хорошо, уговорил - письма будем отправлять через POST :)) А по поводу нахулиганить через эту отправку - по-моему, тоже ничего сложного. В первом приближении - заменить все сомнительные символы типа ", ', @… на \", \', \@…
Или не так? Ой, зря я тут начал.… Щас начнут по голове бить... :bye:
<sergio.ga>
новый человек
0
Сообщения: 102
Зарегистрирован: 13.06.03
Откуда: Харьков, Украина
Сообщение Добавлено: 26 Август 2003, 09:48:34 
Господа, что-то вы мудрите.
С каких это пор action=mailto: стал работать только в Аутлуке?
Проверено и в Бате и в Мозилла Мэйл - всё ОК.

Короче, Neto, за неимением РНР и других средств используйте:

Код:
<form action='mailto:some@e-mail.com?subject=Feedback%20form%20data' method=post>
<input type=text …
<input type=checkbox …
<input type=radio …

<input type=submit …
</form>'


some@e-mail.com замените на адрес эл. почты для отправки
Feedback%20form%20data замените на тему письма по умолчанию (%20 - использовать вместо пробелов)

Результатом будет письмо в формате:
name=value
name=value
Где name - значение атрибута name элемента формы, value - значение value. :)
Для радиокнопок value - значение выбранного варианта.
Для чекбоксов - пара name-value будет передана только если чекбокс включен.

Лучше, чем ничего.
SPiRiT
новый человек
0
Сообщения: 19
Зарегистрирован: 01.10.02
Откуда: Москва
Сообщение Добавлено: 26 Август 2003, 10:22:57 
<sergio.ga>, я попробовал, у меня отправилось пустое письмо с аттачментом POSTDATA.ATT, к котором просто содержится строка CGI-запроса.
Клиент по умолчанию - Outlook 2000.
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 26 Август 2003, 10:25:23 

SPiRiT писал(а):
любой платный хостинг предоставляет возможность отправки со своего smtp-сервера


Не любой.
Skeeve
соучастник
0
Сообщения: 349
Зарегистрирован: 26.07.03
Откуда: Bazaar
Сообщение Добавлено: 26 Август 2003, 10:29:06 
<sergio.ga>,
mailto использует почтовый клиент по умолчанию.
Так что абсолютно правильно у Вас сработало.
Еще в шкафике (NN) работает.

Но если сайт солидный, то непонятно, почему бы там не использовать PHP и способ, указанныйSPiRiT.
Long Муж.
SubAdmin
Теоретик
17
Сообщения: 4362
Зарегистрирован: 25.04.01
Откуда: Москва
Сообщение Добавлено: 26 Август 2003, 13:27:27 
<sergio.ga>, давай ты будешь проверять прежде чем советовать? :dont: только в оутлоку можно кроме сабжа передать тело письма со страницы. :glasses:

_________________
Мудрость не всегда приходит с возрастом. Бывает, что возраст приходит один.
<sergio.ga>
новый человек
0
Сообщения: 102
Зарегистрирован: 13.06.03
Откуда: Харьков, Украина
Сообщение Добавлено: 27 Август 2003, 16:20:30 

Long писал(а):
<sergio.ga>, давай ты будешь проверять прежде чем советовать? :dont: только в оутлоку можно кроме сабжа передать тело письма со страницы. :glasses:


Согласен, облажался.
Остаётся проверить предоставляет ли хостер сервис вроде FormMail.
Это позволит отправив форму на определённый адрес и указав в скрытом поле адрес получателя получать данные на этот адрес.
Возможно есть и бесплатные сервисы подобного рода.

P.S. и всё таки мне кажется что в Бате работает фишка с mailto: помнится я заказывал пригласительные на выставку именно через такую форму...
SPiRiT
новый человек
0
Сообщения: 19
Зарегистрирован: 01.10.02
Откуда: Москва
Сообщение Добавлено: 29 Август 2003, 13:52:21 
<sergio.ga>, дык ть никто и не спорит - "mailto:" работает и в Бате и вообще в любом мало-мальски функциональном почтовом клиенте, если тот установлен как default.
Более того, Бат можно даже использовать как Simple MAPI Client, т.е. программой, к примеру на C++, отправлять через него письма.
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 22 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100