Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Безопасная форма
Форумы портала PHP.SU » » Работа с сетью » Безопасная форма

Страниц (1): [1]
 

1. galal - 25 Апреля, 2011 - 21:39:50 - перейти к сообщению
Добрый день, Господа программисты!
Я буду писать форму для отправки писем администратору сайта. Подскажите пожалуйста как мне скрыть почту.
Например: .......
$to = 'mail@yandex.ru';
.......
mail($to, $subject, $message, $headers, '-f'. $from);
......

Как мне скрыть почтовый ящик в переменной $to, например так $to='sdfghgjhgjghfjd' или что-то в этом роде. Ну и естественно, что бы это работало Улыбка
Хочу скрыть почту от спамеров.

Заранее благодарен.
2. Мелкий - 25 Апреля, 2011 - 21:45:32 - перейти к сообщению
0) скрыть почту от робота, чтобы он при виде страницы с формой не спарсил мыло?
Ну так и не выводите мыло в форму, зачем? Пусть его только скрипт и знает.
1) помешать использовать форму для рассылки спама - и чем вам поможет скрытие адреса?
3. DlTA - 25 Апреля, 2011 - 21:47:05 - перейти к сообщению
)) гыыыыыыы
mail() выполняется на сервере
данные для нее сами определяете
а это значит что если отправлять форму то совсем не обязательно в форме указывать адрес на который будет отправлено мыло
вполне достаточно:
лишь текст, обратное мыло, тема, и ченить для проверки на ботов
4. destus - 26 Апреля, 2011 - 04:27:40 - перейти к сообщению
объявляй констансту и заноси туда свою почту. И не надо будет никаких скрытых полей делать на форме.
5. Haron - 26 Апреля, 2011 - 05:17:34 - перейти к сообщению
Не надо забывать и про фильтрацию данных, например от символов \n и \r - через них можно свои хидеры впереть в письмо. Во хохма-то будет Радость
6. Php-html.org - 26 Апреля, 2011 - 11:11:40 - перейти к сообщению
destus пишет:
объявляй константу

С этим согласен, вполне безопасно и легко.
7. galal - 26 Апреля, 2011 - 11:57:38 - перейти к сообщению
Haron пишет:
Не надо забывать и про фильтрацию данных, например от символов \n и \r - через них можно свои хидеры впереть в письмо. Во хохма-то будет Радость


Добрый день!
Скажи пожалуйста, что такое "хидеры"? И как отфильтровать от символов \n и \r.
Буду благодарен.
(Добавление)
destus пишет:
объявляй констансту и заноси туда свою почту. И не надо будет никаких скрытых полей делать на форме.

Добрый день!
Я с константами не разу еще не работал, так как программирование у меня не профессиональное и я, так скажем, из начинающих.
Заранее благодарен.
8. Php-html.org - 26 Апреля, 2011 - 12:17:10 - перейти к сообщению
galal пишет:
Добрый день!
Я с константами не разу еще не работал, так как программирование у меня не профессиональное и я, так скажем, из начинающих.
Заранее благодарен.

PHP:
скопировать код в буфер обмена
  1. define("NAME","константа",true);
  2. echo NAME;

1 параметр - имя
2 параметр - значение
3 параметр - регистр имени)
http://www.php.su/learnphp/?const - к изучению.
9. Haron - 26 Апреля, 2011 - 12:18:18 - перейти к сообщению
Хидеры (headers) - это то, что Вам понадобится прописать при отправке письма.

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8" . PHP_EOL;
$headers .= "Sender: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "Return-Path: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "From: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "Reply-To: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;

Переменная с заголовками потом передаётся php функции mail().
Так вот, здесь, в предопределённой константе PHP_EOL - лежит символ перевода строки (так как функции mail() - заголовки надо передавать именно с переносами). Для винды - он будет \r\n а для линуксов - \n.

Так вот, мне ничего не будет мешать вставить в поле имейла на сайте - подобные символы, и прописать затем свои заголовки. Например возможно подменить отправителя, и получателя подобным образом. Или даже исказить письмо.
10. galal - 26 Апреля, 2011 - 12:30:08 - перейти к сообщению
Php-html.org пишет:
galal пишет:
Добрый день!
Я с константами не разу еще не работал, так как программирование у меня не профессиональное и я, так скажем, из начинающих.
Заранее благодарен.

PHP:
скопировать код в буфер обмена
  1. define("NAME","константа",true);
  2. echo NAME;

1 параметр - имя
2 параметр - значение
3 параметр - регистр имени)
http://www.php.su/learnphp/?const - к изучению.


Большое спасибо. Обязательно изучу и воспользуюсь Улыбка
(Добавление)
Haron пишет:
Хидеры (headers) - это то, что Вам понадобится прописать при отправке письма.

$headers = "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=utf-8" . PHP_EOL;
$headers .= "Sender: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "Return-Path: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "From: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;
$headers .= "Reply-To: Vasua Pupkin <test@vasua.ru>" . PHP_EOL;

Переменная с заголовками потом передаётся php функции mail().
Так вот, здесь, в предопределённой константе PHP_EOL - лежит символ перевода строки (так как функции mail() - заголовки надо передавать именно с переносами). Для винды - он будет \r\n а для линуксов - \n.

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


Большое спасибо. Буду теперь отсикать "\r\n". Благодарен за помощь. Улыбка

 

Powered by ExBB FM 1.0 RC1