Вопрос № 36852: Приветствую всех! Нужна срочно консультация программистов PHP... Вопрос в том, что на одном из моих сайтов есть простенькая почтовая форма обратной связи на основе PHP-скрипта. Последнее время было пару случаев, что некто настойчиво вводит в поля фо...Вопрос № 36853: Здравствуйте эксперты!
хочу отправить почту с сайта используя удалённый smtp сервер тоесть стандартной функцией mail() здесь не обойтись , можно ли это вообще сделать с помощью php или нет ?
сейчас пытаюсь наладить соединение с smtp сервером...Вопрос № 36896: Здравствуйте!
Как провернуть следующее:Хранение и закачка мелодий. Файл мелодии закачиваются при добавлении мелодии: стандартная кнопка Обзор в WINDOWS. Ограничения на расширения и размер файла нет. Все мелодии хранятся в папке на сервере files/m...
Вопрос № 36.852
Приветствую всех! Нужна срочно консультация программистов PHP... Вопрос в том, что на одном из моих сайтов есть простенькая почтовая форма обратной связи на основе PHP-скрипта. Последнее время было пару случаев, что некто настойчиво вводит в поля формы что-то типа имейла, но с моим доменом. Т.е., скажем, мой домен server.org а почтовый ящик admin@server.org. В поля почтовой формы вводятся e-mail адреса типа 2888@server.org, 2788@server.org и т.д. Является ли это попыткой взлома, подбора пароля или еще чего
ли подобного?
Как защититься от подобной напасти и каковы вообще методы защиты скриптов - обрабочиков форм?
Буду весьма признателен всем ответившим, а также благодарен за ссылки на эту тему в инете...
Отвечает: Ерёмин Андрей
Здравствуйте, Андрей Агарков!
Нужно обрабатывать данные, введённые в форму и, если они ошибочны, выдавать предупреждение, а письмо не высылать. Конкретно - вот пример проверки введённого e-mail адреса:
if (!eregi("^([0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\.[a-wyz][a-z](fo|g|l|m|mes|o|op|pa|ro|seum|t|u|v|z)?)$", $email)) { print "Вы ввели некорректный E-mail адрес."; }
--------- Нет правила без исключений. Правило без исключений - исключение из правил.
Ответ отправил: Ерёмин Андрей (статус: Профессор)
Отправлен: 06.03.2006, 07:38
Отвечает: wils0n
Здравствуйте, Андрей Агарков!
Дополнение к предыдущему автору. Если подобные попытки происходят массивно, то наверняка их отсылает другой скрипт. Существует на этот случай защита в виде генерации картинки со случайным кодом и сложным фоном. Так чтобы скрипт не смог распознать, а человек смог бы. Для отправки сообщения таким образом, необходимо будет ввести этот самый код.
Это можно реализовать самому или поискать в гугле. Там этой информации достаточно, даже готовые скрпты есть.
--------- Life is like a box with chocolate. You never know what you're gonna get. (c) Forrest Gump's mom
Ответ отправил: wils0n (статус: 3-ий класс)
Отправлен: 06.03.2006, 10:03
Вопрос № 36.853
Здравствуйте эксперты!
хочу отправить почту с сайта используя удалённый smtp сервер тоесть стандартной функцией mail() здесь не обойтись , можно ли это вообще сделать с помощью php или нет ?
сейчас пытаюсь наладить соединение с smtp сервером по протоколу imap но на этом и заглох, вроде в коде всё правильно , а соединение не происходит - в чём ошибка или это просто не реально ? http://www.mail.ru/pages/help/337.html
Приложение:
Отправлен: 06.03.2006, 04:17
Вопрос задал: Cimus (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: wils0n
Здравствуйте, Cimus!
Про использование удалённого SMTP-сервера читайте здесь:
http://phpmailer.sourceforge.net/docs/
http://phpmailer.sourceforge.net/
По поводу Вашего кода. Прочитайте внимательно информацию по Вами же приведённой ссылке. Есть глобальное различие между IMAP и SMTP. Первое нужно для получения и удаления писем, а второе для отправки писем. Порт 2525 в данном случае принадлежит SMTP, а Вы пытаетесь зайти на него как на IMAP. Так нельзя.
--------- Life is like a box with chocolate. You never know what you're gonna get. (c) Forrest Gump's mom
Ответ отправил: wils0n (статус: 3-ий класс)
Отправлен: 06.03.2006, 09:53 Оценка за ответ: 5 Комментарий оценки: Спасибо ! Буду пробовать дальше , только уже ближе к цели!
Вопрос № 36.896
Здравствуйте!
Как провернуть следующее:Хранение и закачка мелодий. Файл мелодии закачиваются при добавлении мелодии: стандартная кнопка Обзор в WINDOWS. Ограничения на расширения и размер файла нет. Все мелодии хранятся в папке на сервере files/melody. При добавлении мелодии выбирается категория с названием первой буквы песни и создаётся папка. Пример: требуется добавить песню Aventura-Obsession. Выбериается категория “A” файл сохраняется в директории корень сайта/files/melody/a/.
Отправлен: 06.03.2006, 17:26
Вопрос задал: Sassoft (статус: 1-ый класс)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Stamm
Здравствуйте, Sassoft!
Здесь все очень просто сделать, если конечно знать))))))))
Значит так, делаем в HTML форму отправки файла.
Далее уже пишем php-код:
Сначала проверяем нажата ли была кнопка, затем уже работаем с файлом. Делаем ссылку на файл($data), узнаем временный путь($tmp) и его имя($name). Если файл успешно закачен во временную папку, то создаем папку, имя которой первый символ имени файла($name[0]), с максимальными правами. Далее просто пермещаем файл из временной папки в необходимую.
Вот сообственно и всё.
Конечно, же нужно проверять расширение файла: сделать массив из всех допустимых расширений и проверять файл на соответствие этим расширениям.
В PHP также есть функции с работой над mp3 файлами(По-моему,id3_get_tag()).
Так что есть еще предел творчеству над данным скриптом.
Приложение:
--------- В день - один, ну два подвига, не больше...
Ответ отправил: Stamm (статус: Студент)
Отправлен: 06.03.2006, 19:41