Назар Токар
Опубліковано: 28 Березня 2012
Оновлено: 26 Серпня 2017

callme errors

В догонку к предыдущему посту придётся создать и этот, куда я буду складывать вопросы, которые возникают у пользователей при установке CallMe. Естественно, с решениями. Пост будет пополняться по мере нахождения багов и фич.

Не открывается *.html

В браузере не открывается файл с расширением *.html, ошибка 404 или открывается любая из страниц сайта

В файле .htaccess стоит запрет на открытие html-файлов напрямую, такое иногда встречается в некоторых cms. Вы можете проверить, открыв файл .htaccess в корне вашего сайта. Там будет что-то похожее:

RewriteRule ^(.*).html(.*)$ index.php [L]

Решение: переименуйте html-файл, смените расширение с html на php и в .js найдите функцию, которая вставляет форму на сайт и замените там расширение на .php.

Работает только на стартовой

На стартовой скрипт работает, а на остальных висит отправка и ничего не происходит.

В html вашего сайта может быть указан параметр base href. Обычно он мало чем вам поможет, а иногда ещё и навредит, как в случае с base href=’http://***.ru/index.php/icons’. Если это не противоречит вашей вёрстке, удаляйте эту строку из темплейтов, в большинстве случаев вообще ничего не поменяется. Если так сделать не получится, отредактируйте js-файлы скрипта и замените все относительные адреса на абсолютные. Например, /callme/callme.js будет заменено на http://***.com/callme/callme.js.

Кнопка не реагирует на клик

Кнопка «Перезвони мне» справа появилась, но не реагирует на клик.

Это может быть по многим причинам. Одна из них: закачаны не все файлы скрипта, либо же закачаны не полностью. Для нормальной загрузки лучше пользоваться не веб-загрузчиками, которые могут фильтровать загружаемый контент, а вручную по ftp. Рекомендую программу WinSCP, CyberDuck или FileZilla.

Для смены электропочты и редактирования скрипта всегда пользуйтесь хорошим редактором кода. Например, Sublime Text, Coda, Notepad++, HTMLPad. Не пользуйтесь стандартным блокнотом (почему?).

Форма отображается внизу страницы

Форма появилась, но не реагирует на клики и висит внизу страницы.

Не загружены или не подключены файлы сss. Убедитесь, что css-файлы лежат в папке /сallme/ либо в любой другой и путь к ним указан верно.

Если у вас OpenCart, поля формы могут быть половинной ширины, так как стили магазина обрабатывают все текстовые поля, в т.ч. CallMe. Решение подсказал userV, нужно в /templates/**/style.css добавить !important перед точкой с запятой для всех стилей текстовых полей.

Не приходят уведомления на почту

Всё работает, но письмо на почту не приходит.

Возможны разные варианты. Проверьте папку спама. Для того, чтобы почтовик не расценивал письма как спам, укажите разные адреса в качестве отправителя и получателя.

Второй вариант: на хостинге может быть выключена функция php sendmail, в таком случае нужно связаться с хостером и попросить включить.

Третий вариант: проверьте правильность адреса почты.

“Висит” отправка

Появляется слово “Отправка запроса” и ничего не происходит.

Вы неправильно отредактировали /lib/send.php и он вместо сообщения об отправке выдаёт error. Чтобы убедиться, откройте файл /callme/lib/send.php в браузере и убедитесь, что он не выдаёт ошибок php.

Вариант №2: вы добавили вывод jQuery вручную после /callme/callme.js. Откройте тестовую страницу по адресу /callme/index.html – если отправка работает, проблема с повторным вызовом jQuery. Если не работает — проблема с send.php.

Вариант №3: у вас устаревшая версия jQuery. Решение: обновите до версии не менее чем 1.7.2 либо воспользуйтесь инструкцией.

Вариант №4: иногда адрес отправителя письма должен быть зарегистрированным ящиком на хостинге. Например, здесь, выделено красным.

Вариант №5: встречается реже, но бывает. В версии 1.9.0 была добавлена функция отображения города, из которого отправляется уведомление. Данные вычисляются по ip и из динамического ответа сервиса freegeoip.net. В том случае, если у вас выключена функция json_decode, ваш файл send.php будет выдавать ошибку 500. В таком случае нужно или попросить хостера включить функцию, или убрать декодирование и отправки данных, нужно найти строки:

$ip = $_SERVER['REMOTE_ADDR'];
 $geo = file_get_contents('http://freegeoip.net/json/'.$ip);
 $geo = json_decode($geo, true);

И заменить их на

$geo = $_SERVER['REMOTE_ADDR'];

Вариант №6: Письмо приходит, но сообщение об отправке не выдается. Причина: устаревшая версия php или запрет на функцию file_get_contents. Воспользуйтесь аддоном Firebug (в Firefox) или встроенной проверкой кода (Chrome). Откройте response для файла send.php и посмотрите, какой ответ присылает этот файл. Там может быть нечто похожее на:

Warning: file_get_contents(): ... is disabled in the server configuration by allow_url_fopen=0...

Тогда в send.php нужно отключить функцию file_get_contents. У вас не будут работать отправка sms и выяснение города, откуда была отправка.

Вариант №7: Неправильно указан отправитель. Обратите внимание: после отправителя по умолчанию (noreply) добавляется домен сайта. Если вы настраиваете smtp, дополнительно домен указываться не должен. Распространенная ошибка встречается в таком формате:

$from = "nasutkivminske@gmail.com".$HTTP_HOST;

Вместо этого нужно:

$from = "nasutkivminske@gmail.com";

Проблемы с кодировкой

Скрипт работает нормально, а некоторые другие выдают неправильную кодировку

Сайт в кодировке Win-1251, а скрипт в utf-8. И чтобы не было конфликтов, в callme.js я указал, что ajax-запросы должны отправляться строго в utf-8. Ваше голосование работает тоже с асинхронной передачей данных, соответственно и там кодировка меняется.

Надо сделать следующее:

Перекодировать (пункт “кодировка” в Notepad++) файлы:

  • /callme/js/callme.js
  • /callme/f.php

После этого в callme.js  закоментировать такую строку:

contentType: "text/html; charset=utf-8",

Ничего не помогает

Нашёл ошибку, все сделал как указано в инструкции, обновил все файлы, но проблема осталась.

Не забывайте чистить кэш. Как браузерный, так и серверный, если ваша CMS это позволяет.

← Тисни «Лайк», щоб читати нас у Фейсбуці
Tokar_ua Будьте в курсі. Долучайтесь до нашого каналу в Telegram.

Поширити у Фейсбуці
Надіслати у Messenger
Надіслати в Telegram
Надіслати у WhatsApp
Зберегти в Pocket

Додати коментар

Такий e-mail вже зареєстровано. Скористуйтеся формою входу або введіть інший.

Ви вказали некоректні логін або пароль

Вибачте, для коментування необхідно увійти.

552 коментаря

спочатку нові
за рейтингом спочатку нові за хронологією

Хочу подключить скрипт к сайту. сайт на WP, где можно прочитать простую инструкцию, чтобы подключить самостоятельно? Возможно скрипт доступен как плагин ?

Назар Токар читаю комментарии и вижу, что когда у тебя нет ответа на вопрос пользователя, ты отсылаешь на инструкцию, где также ничего нет. Что за ерунда? Ты можешь ответить: Почему добавляя поле количество, если проставить цифрой, то ничего не придет? И второй вопрос, можно ли в форму поставить капчу?

Автор
Назар Токар

А чому на «ти», ми хіба знайомі? І таки так, ви будете сміятись, але відповіді на обидва ваші запитання є на форумі і також на getcallme.com. Тому я не витрачаю свій час, а пропоную користувачеві САМОСТІЙНО знайти відповідь.

продолжаю тестить...
на мобильных устройствах очень криво отображается форма(не видно половину поля и на всю ширину экрана). Даже с вашего сайта такая же проблема, а я думал у меня со стилями что-то не так....
прилагаю скриншоты
один с Iphone другой с Android

Автор
Назар Токар

Де скріни?

не смог к вам загрузить так что вот ссылки

Автор
Назар Токар

Ширина правильна, а висоту полів відредагую, дякую.

спасибо.
скажите пожалуйста где и какие параметры отредактировать чтоб ширину изменить на мобильном устройстве, я б для себя всётаки уменьшил.
а насчёт моего предыдущего сообщения? про поле "количество" которое я добавил

Спасибо за скрипт, работает хорошо. Но обнаружил такой баг..
Добавил поле "Количество"
Так вот если в это поле вписать цифру 1 или 2 или 22 или 35 то ничего на почту не получу, а если вписать например слово "два, три, пять" или число 3х или 4х значное то приходит на почту.
Помогите исправить пожалуйста.

Здравствуйте, Назар. Скрипт установил. Правки в send.php внес. Почта на mail.ru Стал хорошо, но письма все-таки не приходят. Сайт на joomla 2/5. Там уже стоит один модуль обратного звонка (в шапке на главной), он работает нормально.

Извините за спам, читал комментарии не стой стороны. Дошел до свежих - нашел упоминание и решение

Добрый день!

Получил не стандартную ошибку - после установки скрипта обязательными стали все поле без *, а поле телефона(я оставил базовую настройку, только удалил пару полей) - наоборот необязательным

Добрый день.

buyme.js:272 Uncaught TypeError: Cannot read property 'length' of undefined

На опенкарте 2.2 со стороней темой.

Можете подсказать. Спасибо

http://madcap.com.ua/product/product?product_id=275

Автор
Назар Токар

Для імені товару не додано відповідного класу.

А таке запитання: чи можливо прописати декілька адрес отримувачів повідомлення. Якщо потрібно, щоб лис приходив на дві електронки чи можливо так зробити?

Автор
Назар Токар

Звичайно, просто через кому їх треба записати.

Блін, що я вже тільки не робив. Не відправляється повідомлення і все. Якщо роблю через Яндекс то тупо зависає, якщо через власний поштовик, то швиденько пише, що все відправлено, але нічого не приходить.

Сайт http://budvin.com.ua

Автор
Назар Токар

А ви спробуйте smtp налаштувати. Або спитати у хостера, чи увімкнено функцію php sendmail.

Ось що він мені відповів: "Попробуйте использовать функции php mail(), а не sendmail или протокола SMTP. php mail() гарантированно должен работать."

Автор
Назар Токар

Це воно і є, має працювати, якщо налаштовано правильно і якщо хостер каже як воно є насправді.

Запрацювало, правда тепер сам не розумію від чого. Ну й ладно, робить та й добре.

Цікаво, що якщо я використовую модуль зворотнього зв'язку вордпераса, то повідомлення йдуть, а з Callme десь пропадають. Та й так видно, що тільки натиснув на кнопку і зразу відправлено, навіть не задумується

"Откройте тестовую страницу по адресу /callme/index.html" блин, исправьте в инструкции на index.php ...пока не дошло, что вы расширение не правильно указали, чуть монитор не расфигачил...не открывается и не открывается..да что ты будешь делать)))

Прошу прощения. мх записи не обновились еще. Вопрос снят.

Не приходят уведомления на доменную почту яндекса. На gmail приходили. А так сам скрипт отличный.

Здравствуйте. Сегодня скачал скрипт. Подключил к MODX Revolution вручную на чистую страничку с чистым шаблоном. Исправил send.php. И ведь работает! Спасибо.

Но с самого начала, когда я ещё не правил под себя config.js, увидел что поле телефона не является обязательным!

Оно не подсвечивается красным и письма уходят без него. Хотя судя по описанию там правильно в нужном месте стоит *. Попробовал убрать звездочки у всех полей как написано - но телефон опять не стал обязательным. В общем получается, что у меня это поле нечувствительно к * и всегда является не обязательным.

Сейчас я уже поменял тексты по умолчанию на свои, убрал панель, пробовал подключать по разному, результат тот же.

И ещё не знаю должно ли так быть. После отправки когда форма уже закрылась, если вызвать её ещё раз то она открывается с "Спасибо, сообщение отправлено", но запомненным остается только поле телефон, другие очищаются.

Должно ли так быть и связано ли это с ошибкой которая у меня наблюдается с "обязательным заполнением"

Cпаcибо.

Автор
Назар Токар

Да, есть такой вопрос, будет исправлен в след. версии. Можете найти на форуме решение и исправить сами.

Спасибо за добротный скрипт.

Нашел решение где советуют убрать = , но это решение дает возможность в поле "Телефон" вводить все что угодно, может подскажите что поправить?

не приходят сообщение на почту не могу найти причину!!!

Добрый день.

Сайт на Wordpress. При установке скрипта на стандартную тему, форма показывается, при установке на другую тему, при нажатии на кнопку ничего не происходит http://bitumgrupp.ru

Подключил js , прописал свой емейл в send.php, залил папку в корень, сайт ооочень виснет, не грузит до конца. Все из-за подключения js

подключен jquery 1.9.0

Доброго времени суток. У кого были проблемы как у меня с SMTP отправкой, попробуйте заменить содержимое скрипт автора smtp.php на этот:

http://i-leon.ru/smtp-php/

У меня только так заработало smtp через gmail.com

здравствуйте. спасибо за столь необходимый модуль. хотел узнать можно ли "Купить за 1 клик" кнопку...сделать на других языках? а то у меня на всех языках сайта только на русском кнопка

Добрый день, не подскажете в чем проблема? все проставила как обычно, сама форма появляется и пишет что сообщение отправлено, только в итоге писем так инет на почте, в спаме тоже пусто , с этого хостинга уже проверено все приходило, только форма 2.2 проверялась и на другом домене, но настройки хостинга те же

Александр

У меня jquery 1.7.1. Будет ли она работать на callback 2.3?

Автор
Назар Токар

Да.

Извените но так и не понял (((

Все сделал как по инструкции, кнопка появилась, ошибок в файрбуге нет.

Но при нажатии на кнопку ни чего не происходит... нет окна "pop-up"

P.S. В файл .htaccess изменения внес (не помогло).

Что я может быть?

P.S.

Автор
Назар Токар

@Борис, без понятия, даже не знаю, по какому адресу ваш сайт.

@Назар Токарь, сайт на локальном. И еще получилось так.... Я попробовал включить в виртуемарте поддержку "query" и скрипт стал работать! При этом слайдинг товаров перестал работать, картинки товаров перестали подгружатся, в файрбуге появилась тьма ошибок, в том чесле и на buyme.js , отключил поддержку в виртуе, но ни чего не поменялось.... Вообщем пробую сново, благо был бэкап...

Автор
Назар Токар

@Борис, подключите jQuery.

Доброго времени суток! Извините за глупый вопрос, но все же: возможно ли до покупки скрипта что то в нем менять?Спрашиваю потому, что ставила его в не измененном виде (со всеми полями для заполнения) - работал прекрасно! Но все поля мне не нужны, оставила только "имя","тел.", "комментарий" - и в таком виде он никак не хочет работать :-( Если не трудно, подскажите в чем проблема..?

Вот сюда ставила sun-tour777.ru/contact-us/

Автор
Назар Токар

@Лсриса, вы можете менять поля в любое время в файле config.js. Следуйте инструкции, и всё будет работать нормально.

Назар, здравствуйте

Письмо отправляет, но висит на "идёт отправка". Геоопределение убрал, эффекта нет. На тестовой странице - то же самое.
В чём может быть дело?
Спасибо.

@Дмитрий, вопрос снят, спасибо.

Кнопка перезвонить мне и форма залазят под шапку, что делать?

Сайт - benzograd.com.ua

@Артем, Та же проблема. Решили?

Автор
Назар Токар

@Артем, читать коменты.

Облазил весь форум. Не смог найти решение. Подскажите, как убрать дублирование полей в письме которое приходит на эл. почту и sms? По копейке значительно ударяет при подключении сервиса sms-уведомлений из-за увеличения длины сообщения. Спасибо.

Не работает кнопка ЗАКРЫТЬ, в чем может быть дело?

@Димитрий, проблема была в том что стиль заголовка налазил на стиль кнопки закрыть.

Назар, добрый день! Отличный скрипт, поставили себе на сайт, всё работало изначально, правда письма приходили только на хостинговую почту. Со временем кнопка заказать обратный звонок перестала открывать форму. Можешь, пожалуйста, посмотреть в чем проблема? коды проверили всё в порядке вроде, фаилы в папке callme вообще не трогали.

Константин

Для нормальной работы (висела отправка, выполнил все - непомогло) пришлось в файле send.php закомментировать все '$sms'

Лог ошибок сервера на Дебиане 7:

""",....PHP Parse error: syntax error, unexpected '$sms' (T_VARIABLE) in /var/www/k......../data/www/мой-домен.ru/callme/lib/send.php on line......"""""

Сразу все стало корректно работать!

Назар, спасибо!

МакКлейн

callme работает, buyme нет( через проверку "buyme/index.html" работает. но я проверил. повторного запуска jQ нет. что же не так? ( Три раза перезалил файлы и сделал нужные правки. Висит постоянная отправка http://1000kartin.com/

Автор
Назар Токар

Всё настроено правильно за исключением имени товара. Ваш сервер отвечает:

Request-URI Too Large

Потому что в имя товара вы включили слишком много текста. Уберите лишнее, оставьте только название.

Завантажити ще