Помощник
|
Как подменить отправителя в mail() |
VsOK
|
Сообщение
#1
|
||
|
|
||
|
|||
ZiTosS |
26.7.2010, 23:48;
Ответить: ZiTosS
Сообщение
#2
|
|
VsOK, не все хостеры разрешают подменять адрес и имя отправителя, чтобы обезопасить пользователей. Иначе вы можете отправить почту от любого имени, это критично...
Если у вас собственный почтовый сервер, то пожалуйста: [php]<?php if(!empty($_POST['subj']) && !empty($_POST['text']) && !empty($_POST['mail'])) { if(@mail($_POST['mail'], $_POST['subj'], htmlspecialchars($_POST['text']), "From: ваш@email.ru")) // добавляем в шапку отправителя echo "Письмо успешно отправлено."; else echo "Произошла ошибка, попробуйте снова."; // Очищаем переменные, что бы пользователь случайно снова не отправил нам письмо $_POST['subj'] = ""; $_POST['text'] = ""; $_POST['mail'] = ""; } ?>[/php] Если сервак sendmail, то возможно, понадобится пятый параметр, почитать можно по ссылке ниже. Если ещё что-то заинтересует из заголовков, почитайте - mail() |
|
|
VsOK
|
Сообщение
#3
|
|
Спасибо, то что нужно.
А как добавить чтобы переменная была. Ввожу в форму переменную E-mail отправителя: <input value="Studio Domino Billing Department <billing@studio-domino.com>" name="from" size="90"> И чтобы введенный адрес и передавался в параметре From. |
|
|
gaaarfild |
27.7.2010, 1:18;
Ответить: gaaarfild
Сообщение
#4
|
|
Задай тип инпута type="hidden" и вставляй полученные данные в функцию mail();
Но, необходимо заменить угловые скобки на их аналоги ASCII: > < Иначе интерпретатор HTML будет путаться и думать, что ты закрываешь тэг. |
|
|
ZiTosS |
27.7.2010, 15:58;
Ответить: ZiTosS
Сообщение
#5
|
|
VsOK,
[php]<?php if(!empty($_POST['subj']) && !empty($_POST['text']) && !empty($_POST['mail'] && !empty($_POST['from']))) { if(@mail($_POST['mail'], $_POST['subj'], htmlspecialchars($_POST['text']), $_POST['from'])) // добавляем в шапку отправителя echo "Письмо успешно отправлено."; else echo "Произошла ошибка, попробуйте снова."; // Очищаем переменные, что бы пользователь случайно снова не отправил нам письмо $_POST['subj'] = ""; $_POST['text'] = ""; $_POST['mail'] = ""; } ?>[/php] Если в переменную $_POST['from'] будут поступать выше-приведенные вами данные, то код выше. И так же не забываем, что пери добавлении иных заголовков их нужно разделять переносом коретки и отступом \r\n В любом случае, если этой формой будете пользоваться только вы, то никаких проверок делать не нужно, а иначе всё же советую делать проверки. gaaarfild, по-моему не нужно заменять спецсимволы на их эквиваленты, это не тело сообщения, а заголовки Там всё четко. |
|
|
gaaarfild |
28.7.2010, 20:36;
Ответить: gaaarfild
Сообщение
#6
|
|
Так это не для интерпретатора PHP, это для HTML. Оно же у него в теге HTML находится.
|
|
|
ZiTosS |
28.7.2010, 22:21;
Ответить: ZiTosS
Сообщение
#7
|
|
gaaarfild, это не тег HTML. Так пишется адрес отправителя, если указывается так же имя отправителя. Тут не нужно ничего преобразовывать. Сервер поймет всё как нужно.
|
|
|
kons |
4.8.2010, 13:26;
Ответить: kons
Сообщение
#8
|
|
Программы для массовой рассылки писем тоже по-моему могут подменять отправителя.
|
|
|
CashMagnat_mw |
5.8.2010, 1:57;
Ответить: CashMagnat_mw
Сообщение
#9
|
|
|
Если надо подмнить отправителя, то в 4й параметр фунции mail надо прописать From: Admin <tralals@tt.ru>
|
|
|
||
|
Похожие темы
Тема | Ответов | Автор | Просмотров | Последний ответ | |
---|---|---|---|---|---|
Как в пушсетках покупают по 100-200 тысяч кликов за день? | 2 | Boymaster | 685 | Вчера, 17:52 автор: Boymaster |
|
Как вы отдыхаете от работы за компом | 151 | adw-kupon.ru | 19854 | 23.4.2024, 13:52 автор: Vmir |
|
Как вы бросили работу и перешли на заработок с сайтов? | 20 | uahomka | 3463 | 23.4.2024, 11:54 автор: Skyworker |
|
Как вывести деньги в Украине с заблокированного Юмани ? | 30 | freeax | 5038 | 20.4.2024, 16:49 автор: Liudmila |
|
Арбитражники, как ведете учет расходов и доходов? | 13 | Boymaster | 2034 | 20.4.2024, 15:06 автор: Boymaster |
Текстовая версия | Сейчас: 25.4.2024, 7:47 |