Скрипт отправки почтовых сообщений

Тема в разделе "Подбор расширений", создана пользователем bandjuk, 26.01.2014.

  1. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Здравствуйте, нужна помощь знатоков Джумлы.
    Есть код для подбора туров по России, тут подробное описание, пример и как устанавливать http://www.multitour.ru/open-window/podbor/
    сама установка трудностей не вызывает, проблема в пункте 3
    mailsend=''; // путь до скрипта отправки почтовых сообщений
    Где мне взять на Джумле этот скрипт? Может нужно установить какой-то модуль или плагин?
    Пример отправки сообщения есть там же, выбрать в пункте "Курорт:" значение "Анапа", потом подобрать, появится список, нажать на цену, появится окошко отправки:
    c7af8180553cfd41797ca870d6b1ba1d.jpg
    Подскажите пожалуйста, как мне настроить отправку почтовых сообщений?
     
  2.  
  3. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    Очевидно, "путь до скрипта отправки почтовых сообщений" - это стандартный для большинства серверов путь:
     
    bandjuk нравится это.
  4. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    shurikkan, какой полный путь до этого файла?
    Если прописываю так mailsend='/usr/sbin/sendmail';
    выдаёт 404-ю на их сайте, скрин.
    А если так: mailsend='http://адрес моего сайта/usr/sbin/sendmail';
    то выдаёт 404-ю на моём сайте.
    На скрине настройки почты, может там что-то не так?
     

    Вложения:

  5. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 462
    Симпатии:
    303
    Пол:
    Мужской
    Код (html):
    1. Если прописываю так mailsend='/usr/sbin/sendmail';
    2. выдаёт 404-ю на их сайте, скрин.
    3. А если так: mailsend='http://адрес моего сайта/usr/sbin/sendmail';


    Код (CODE):
    1. /usr/sbin/sendmail
    - это папка на сервере, а не на Вашем сайте.
     
    bandjuk нравится это.
  6. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    CB9T, так и что делать-то? :'(
     
  7. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 462
    Симпатии:
    303
    Пол:
    Мужской
    Вы пытаетесь встроить скрипт, который никаким боком к J! не относиться, поэтому логично - там все пилить надо или же можно проконсультировать у их Админов, что да как.

    А по делу:

    Дополнительные параметры которые можно использовать и являются необязательными
    Код (CODE):
    1. mailsend=''; // путь до скрипта отправки почтовых сообщений


    Можете оставить до лучших времен.

    На вскидку у J! файл для отправки сообщений тут:
    Код (CODE):
    1. site.ru/libraries/phpmailer
     
  8. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    Узнайте у разработчика расширения что именно вписывается в это поле.
    Сами скрипты почтовиков в Joomla расположены в папке /libraries/joomla/mail или /libraries/phpmailer, но тут они Вам точно не нужны.
     
  9. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    никак не вариант, смысл тогда от этого если заказать нет возможности?
    Сможете помочь в решении? И сколько будет стоить?

    в том то и дело что с их стороны мороз полнейший, кивают на хостинг
     
  10. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    перешел по ссылке:

    вставил так:
    mailsend='http://мой сайт/libraries/phpmailer/phpmailer.php';
    404 не выбивает, просто белый фон, письмо не пришло
     

    Вложения:

  11. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    В таком случае возможно, стоит отказаться от разработчика, не дающего поддержку для своих расширений?

    Это да, но чаще всего используют Sendmail или SMTP, вроде как :/
     
  12. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    Блин, вот чувствую что там решение простое и лежит на поверхности, но я только начал разбираться в Джумле
     
  13. Offline

    bandjuk Недавно здесь

    Регистрация:
    26.01.2014
    Сообщения:
    7
    Симпатии:
    0
    Пол:
    Мужской
    OlegM, спасибо за чистку темы.
    Ребята, выручайте, неужели нет решения?
     
  14. CB9T
    Offline

    CB9T Преподаватель по J! Команда форума

    Регистрация:
    21.05.2010
    Сообщения:
    2 462
    Симпатии:
    303
    Пол:
    Мужской
    Не будет у Вас работать, т.к. это скрипт, а в 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):
    1. <?php
    2.   $to = "abc@gmail.com";
    3.   $subject = "Robot - Робот";
    4.   $message = "Message, сообщение!";
    5.   mail ($to, $subject, $message);
    6. ?>


    Как видите, всё интуитивно понятно: кому отправлять, какая тема и само сообщение. Если Вы используете пакет Denwer, то после запуска скрипта, Вы сможете найти файл в директории "tmp/!sendmail", в котором и содержатся данные Вашего письма. Открыть эти файлы можно либо в блокноте, но лучше открыть их в какой-нибудь почтовой программе (например, The Bat или Microsoft Outlook).

    Я не даром написал вперемешку русский и английский текст, чтобы проверить кодировку. Очень часто она распознаётся неправильно, и в результате, пользователи видят "абракадабру". Чтобы этого избежать необходимо задать кодировку. И как раз для кодировки, а также для других особых параметров и существует четвёртый аргумент функции mail():
    Код (CODE):
    1. <?php
    2.   $to = "abc@gmail.com";
    3.   $subject = "Robot - Робот";
    4.   $message = "Message,\n сообщение!";
    5.   $headers = "From: MyRusakov.ru <abc@gmail.com>\r\nContent-type: text/plain; charset=windows-1251 \r\n";
    6.   mail ($to, $subject, $message, $headers);
    7. ?>


    Теперь давайте расшифрую то, что здесь написано. В переменной 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):
    1. <?php
    2.   $to = "abc@gmail.com";
    3.   $subject = "Robot - Робот";
    4.   $message = "Hello World!<br /><i>Это письмо отправлено <b>роботом</b>
    5.   и отвечать на него не нужно!</i>";
    6.   $headers = "From: MyRusakov.ru <abc@gmail.com>\r\nContent-type: text/html; charset=windows-1251 \r\n";
    7.   mail ($to, $subject, $message, $headers);
    8. ?>



    Отправлять e-mail в PHP очень важно уметь.
    [!]
     
  15. shurikkan
    Offline

    shurikkan Russian Joomla! Team Команда форума

    Регистрация:
    01.09.2011
    Сообщения:
    1 856
    Симпатии:
    162
    Пол:
    Мужской
    В общем как вариант - скачать болванку модуля для Joomla 2.5 (см.вложение), поместить в неё код скрипта и далее уже работать с почтовиком джумлы (после установки модуля) - хоть через php, хоть через sendmail, хоть через SMTP...
     

    Вложения:

    • clearModule.zip
      Размер файла:
      727 байт
      Просмотров:
      3

Поделиться этой страницей

Загрузка...