Здравствуйте, нужна помощь знатоков Джумлы. Есть код для подбора туров по России, тут подробное описание, пример и как устанавливать http://www.multitour.ru/open-window/podbor/ сама установка трудностей не вызывает, проблема в пункте 3 mailsend=''; // путь до скрипта отправки почтовых сообщений Где мне взять на Джумле этот скрипт? Может нужно установить какой-то модуль или плагин? Пример отправки сообщения есть там же, выбрать в пункте "Курорт:" значение "Анапа", потом подобрать, появится список, нажать на цену, появится окошко отправки: Подскажите пожалуйста, как мне настроить отправку почтовых сообщений?
Очевидно, "путь до скрипта отправки почтовых сообщений" - это стандартный для большинства серверов путь:
shurikkan, какой полный путь до этого файла? Если прописываю так mailsend='/usr/sbin/sendmail'; выдаёт 404-ю на их сайте, скрин. А если так: mailsend='http://адрес моего сайта/usr/sbin/sendmail'; то выдаёт 404-ю на моём сайте. На скрине настройки почты, может там что-то не так?
Код (html): Если прописываю так mailsend='/usr/sbin/sendmail'; выдаёт 404-ю на их сайте, скрин. А если так: mailsend='http://адрес моего сайта/usr/sbin/sendmail'; Код (CODE): /usr/sbin/sendmail - это папка на сервере, а не на Вашем сайте.
Вы пытаетесь встроить скрипт, который никаким боком к J! не относиться, поэтому логично - там все пилить надо или же можно проконсультировать у их Админов, что да как. А по делу: Дополнительные параметры которые можно использовать и являются необязательными Код (CODE): mailsend=''; // путь до скрипта отправки почтовых сообщений Можете оставить до лучших времен. На вскидку у J! файл для отправки сообщений тут: Код (CODE): site.ru/libraries/phpmailer
Узнайте у разработчика расширения что именно вписывается в это поле. Сами скрипты почтовиков в Joomla расположены в папке /libraries/joomla/mail или /libraries/phpmailer, но тут они Вам точно не нужны.
никак не вариант, смысл тогда от этого если заказать нет возможности? Сможете помочь в решении? И сколько будет стоить? в том то и дело что с их стороны мороз полнейший, кивают на хостинг
перешел по ссылке: вставил так: mailsend='http://мой сайт/libraries/phpmailer/phpmailer.php'; 404 не выбивает, просто белый фон, письмо не пришло
В таком случае возможно, стоит отказаться от разработчика, не дающего поддержку для своих расширений? Это да, но чаще всего используют Sendmail или SMTP, вроде как :/
Блин, вот чувствую что там решение простое и лежит на поверхности, но я только начал разбираться в Джумле
Не будет у Вас работать, т.к. это скрипт, а в Joomla! переменные другие и т.д. и вообще Joomla! это CMS. А Вам нужен скрипт отправки сообщений, который будет работать с Вашим скриптом. Для примера вот статья неплохая: http://myrusakov.ru/email-php.html Отправка e-mail в PHP Обычно я пишу вступление о том, почему данная тема так важна для изучения. Но не в этот раз, потому что здесь, уверен, ни у одного человека не возникнет вопрос: "Зачем отправлять e-mail в PHP?". Поэтому предлагаю сразу приступить к делу и узнать об этом более подробно, тем более, что проще реализации отправки e-mail через PHP и придумать нельзя, так что поймут даже те, кто не знаком с PHP вообще. Для начала давайте с Вами разберёмся немного с теорией. Скучно, но поверьте важно. Для отправки e-mail необходим SMTP-сервер. На большинстве платных хостингах он обязательно имеется. Однако, если такой возможности нет (допустим, хостинг бесплатный или очень дешёвый), то тогда можно воспользоваться сторонним SMTP-сервером (например, mail.ru). То есть главное: для отправки необходим SMTP-сервер. Во-вторых, чтобы принимать e-mail необходим POP-сервер. К чему я всё это говорю. А к тому, что очень часто люди спрашивают на форумах: "Почему у меня не работает отправка e-mail в PHP?". А при этом люди пытаются отправить письма с сервера, на котором вообще нет SMTP. Очень важно: PHP e-mail не отправляет! Отправляет e-mail приложение sendmail, которое имеется на операционных системах Unix, на которых и стоят большинство серверов. А PHP просто передаёт команды этому приложению. Надеюсь, объяснил понятно. Поэтому первое, что необходимо сделать - это раздобыть приложение sendmail. Но порадую тех, кто пользуется пакетом Denwer, так как у них это приложение уже встроено. Правда, с одной особенностью. Реальной отправки писем не происходит - они все складываются в директорию "tmp/!sendmail". Но если письмо, которое Вы отправили в PHP, там оказалось, то можете быть уверены, что на 99% на реальном хостинге всё будет работать. Хотя, если Вам очень хочется по-настоящему отправлять e-mail, то Вы можете скачать sendmail, настроить его на какой-нибудь SMTP-сервер, например, mail.ru, затем изменить путь к sendmail в php.ini (настройки PHP) и дальше уже радоваться жизни. А теперь переходим к PHP. Для отправки e-mail используется всего одна функция - mail(). Принимает эта функция четыре параметра, три из которых являются обязательными: Код (CODE): <?php $to = "abc@gmail.com"; $subject = "Robot - Робот"; $message = "Message, сообщение!"; mail ($to, $subject, $message); ?> Как видите, всё интуитивно понятно: кому отправлять, какая тема и само сообщение. Если Вы используете пакет Denwer, то после запуска скрипта, Вы сможете найти файл в директории "tmp/!sendmail", в котором и содержатся данные Вашего письма. Открыть эти файлы можно либо в блокноте, но лучше открыть их в какой-нибудь почтовой программе (например, The Bat или Microsoft Outlook). Я не даром написал вперемешку русский и английский текст, чтобы проверить кодировку. Очень часто она распознаётся неправильно, и в результате, пользователи видят "абракадабру". Чтобы этого избежать необходимо задать кодировку. И как раз для кодировки, а также для других особых параметров и существует четвёртый аргумент функции mail(): Код (CODE): <?php $to = "abc@gmail.com"; $subject = "Robot - Робот"; $message = "Message,\n сообщение!"; $headers = "From: MyRusakov.ru <abc@gmail.com>\r\nContent-type: text/plain; charset=windows-1251 \r\n"; mail ($to, $subject, $message, $headers); ?> Теперь давайте расшифрую то, что здесь написано. В переменной headers мы задали следующие параметры: в поле "От кого" будет стоять "abc@gmail.com" (то есть сообщения можно отправлять далеко не от своего имени). Сообщение также является обычным текстовым (text/plain) в кириллической кодировке (windows-1251), то есть в нашей с Вами родной кодировке, в которой имеется русский язык и английский. И, кстати, "\n" - это переход на новую строку (аналог <br /> в HTML). Также сообщения можно отправлять в HTML-формате. Для этого достаточно всего лишь заменить "text/plain" на "text/html". И Вы сможете в сообщении использовать HTML-теги. Только не забывайте, что всякие теги, наподобие: "<script>", "<iframe>" и другие, - фильтруются любой уважающей себя почтовой системой. Однако, использовать теги оформления ("<b>", "<i>", "<br />" и другие) Вы можете. И давайте, напоследок, отправим e-mail с использованием HTML-тегов: Код (CODE): <?php $to = "abc@gmail.com"; $subject = "Robot - Робот"; $message = "Hello World!<br /><i>Это письмо отправлено <b>роботом</b> и отвечать на него не нужно!</i>"; $headers = "From: MyRusakov.ru <abc@gmail.com>\r\nContent-type: text/html; charset=windows-1251 \r\n"; mail ($to, $subject, $message, $headers); ?> Отправлять e-mail в PHP очень важно уметь.
В общем как вариант - скачать болванку модуля для Joomla 2.5 (см.вложение), поместить в неё код скрипта и далее уже работать с почтовиком джумлы (после установки модуля) - хоть через php, хоть через sendmail, хоть через SMTP...