На нашем сайте - сайте, посвященном ошибкам, очень желательно было установить систему устранения этих самых ошибок. В Рунете для этих целей уже традиционно используется система Orphus.
Одно время скрипт этой системы успешно работал на сайте, но в один прекрасный момент вдруг перестал, и все попытки реанимировать его оказались тщетными.
Пришлось разрабатывать свой скрипт. Как оказалось, все не так-то просто. Помогли уроки JavaScript, ну и, конечно же, Google с Яндексом. В итоге, при сложении нескольких найденных блоков скрипта и почерпнутых из учебника знаний получился вполне рабочий модуль для проверки ошибок на сайте. Для его работы необходима поддержка PHP на хостинге.
Последняя версия скрипта 4.1 основана на плагине typo к CMS Drupal. Автор плагина Роман Архаров. В этой версии появилась функция отображения окружающего ошибку текста, сама же ошибка выделяется красным.
Модуль состоит из четырех файлов: mistakes.js, mistakes.css, mistakes.php и overlay.png.Скачать можно отсюда. Чтобы его подключить, нужно поместить эти файлы в директорию своего сайта, например в папку «mistakes» и на всех страницах сайта между тегами «head» вставить две строки:
<script type="text/javascript" charset="windows-1251" src="/путь до файла/mistakes.js"></script>
<link href="/путь до файла/mistakes.css" rel="stylesheet" type="text/css" />
При этом после src=" и href=" нужно прописать путь к файлу mistakes.js и mistakes.css соответственно.
Файл mistakes.js. В этом файле нужно изменить значение переменной misphploc (то, что между кавычками "") на путь к файлу mistakes.php.Файл mistakes.php.
Здесь нужно изменить значение нескольких переменных:
$title - заголовок сообщения,
$to, - email, на который будут отправляться сообщения,
$mymail - email, от кого пришло сообщение.
Ну и, конечно же, для того чтобы посетитель знал, что он может посодействовать в исправлении ошибок, нужно разместить на страницах вашего сайта, например, такую фразу:
На сайте работает система проверки ошибок. Обнаружив неточность в тексте, выделите ее и нажмите Ctrl + Enter.
Также открыть окошко отправки сообщения можно, кликнув по ссылке:
Код ссылки:
<a href="javascript:void(0)" onclick="PressLink()">Отправить сообщение об ошибке</a>
Исходная кодировка скрипта windows-1251. Если ваш сайт работает на utf-8, то создайте в папке со скриптом файл .htaccess и добавьте в нем строку:
AddDefaultCharset windows-1251
Также вам скорее всего нужно будет переформатировать в utf-8 файл mistakes.js
Скачать модуль mistakes-4.1.zip (zip архив 7Kb).
Если вас по каким-либо причинам не устраивает последняя версия, попробуйте предыдущую - 3.3. mistakes3.3.zip (zip архив 6Kb).
Успешной вам борьбы с опечатками)) Вопросы и пожелания оставляйте в комментариях.
Комментарии
не работает в ИЕ
Опубликовано пользователем Лена
Большое спасибо за работу! Везде работает прекрасно , кроме IE. Как писали уже выше в комментариях: окно слева и видно только правую половинку окна. Поменяла первую строку в файле mistakes.php на : <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> результат тот же. Из-за чего такое может быть?
Re: Не работает в ИЕ
Опубликовано пользователем gorniy
Лена, эту строку надо поставить на всех страницах вашего сайта.
Не получается установить скрипт
Опубликовано пользователем Валерий
http://www.tlkgroup.ru/
В хроме открывает пустой фрейм и не закрывает его + скачивает mistakes.php
в опере так же, в IE открывает гдето сбоку от самого сайта,
Подскажи че зделать
Re: Не получается установить скрипт
Опубликовано пользователем gorniy
Пока что на вашем сайте никак не работает. По поводу ИЕ - смотрите комментарии выше.
Не получается установить скрипт
Опубликовано пользователем Валерий
Начальник уже снес его...=(((про IE извеняюсь за не внимательность....
Кодировка
Опубликовано пользователем Viktor
В кодировке utf-8 вместо "Сообщение об ошибке на сайте" на адрес приходит ябониц ะกะพะพะฑัะตะฝะธะต ะพะฑ ะพัะธะฑะบะต ะฝะฐ ัะฐะนัะต. Менял только в заголовке и здесь:
<code>
$from = "From: =?utf-8?B?". base64_encode("pixel.com"). "?= < $mymail >\n";
$from .= "X-Sender: < $mymail >\n";
$from .= "Content-Type: text/plain; charset=utf-8\n";</code>
Кодировка utf-8
Опубликовано пользователем Владимир
В заголовке страницы в тэге meta, нужно указать кодировку самой страницы - utf-8, и сохранить саму страницу в юникоде.
Благодарю за скрипт!
Опубликовано пользователем lotse
Благодарю за скрипт!
Не корректно работает в джумле
Опубликовано пользователем Денис
Автору спасибо за скрипт!!
Но есть проблемка, - он работает только на главной странице сайта (сайт на джумле). Что куда нужно вписать что бы скрипт работал на всех страничках?
Re: Не корректно работает в джумле
Опубликовано пользователем gorniy
К сожалению, с этой системой не знаком. У Джумлы, насколько мне известно, довольно большое сообщество, и у них есть форумы, на которых обсуждаются подобные проблемы. Попробуйте задать свой вопрос там.
По идее, этот скрипт можно прикрутить к любой CMS.
Как установить скрипт на Wordpress
Опубликовано пользователем Владимир
Добрый день. На своем блоге описал процесс установки данного скрипта на блоге wordpress (http://vlmenshikov.ru/nashli-oshibku-na-sajte-chto-dalshe). Надеюсь не возражаете, ссылка на Ваш сайт, как первоисточник, имеется.
Скрипт отправки сообщений об ошибках
Опубликовано пользователем asdwq
Полезно добавить функцию, при которой один пользователь может отправлять 1-3 сообщения в сутки. Это в целях борьбы со спамом и просто сетевыми дураками.
Спсибо за скрипт
Опубликовано пользователем Гость
Поставиль последнюю версию 3.1 ,но что-то не так с кодировкой приходящих писем -приходит что-то в тиле леный...
Пс у меня все файлы в кодировка utf 8 (без bom)
в чем может быть беда?:(
Re: Спсибо за скрипт
Опубликовано пользователем gorniy
Может, это поможет:
http://mistakes.ru/comment/569#comment-569
Re: Спсибо за скрипт
Опубликовано пользователем gorniy
Кстати говоря, последняя версия сейчас 3.3.
Большое спасибо!!!!! :*
Опубликовано пользователем Аня
Большое спасибо!!!!! :*
Большое спасибо!
Опубликовано пользователем Дмитрий
Большое спасибо за скрипт, работает на ура!!!
И вам)
Опубликовано пользователем gorniy
И вам спасибо за спасибо) Только на вашем сайте нужно в файле css поправить z-index - сделать его больше 999, чтобы окошко с ошибкой не заползало под меню.
P.S. И еще: у вас последняя кнопка меню в Сафари почему-то съехала вниз.
поправил пару строк и сконвертил в UTF
Опубликовано пользователем Alex
Собственно немного ругался он у меня пришлось поправить две строки с $Post и для корректного отображения текста под UTF чарсет-ы также поправил. Кому надо, качайте - http://aquashrimps.ru/upload/mistakes3.3_utf.ZIP
Спасибо
Опубликовано пользователем Вячеслав
Отличный скрип, встроил в joomla 2.5 без проблем.
Благодарность
Опубликовано пользователем Дмитрий
Спасибо, за данное решение. Забарал себе на сайт http://rogovts.ru, и поставил на Ваш ресурс обратную ссылку.
работает только на главной(
Опубликовано пользователем Евгений
Помогите пожалуйста! у меня работает только на главной странице http://myworket.ru/ а на других не работает! подскажите плиз в чем дело?
Re: работает только на главной(
Опубликовано пользователем gorniy
Слэш надо поставить впереди:
var misphploc = '/ctrl-enter/mistakes.php'
огромное спасибо! все
Опубликовано пользователем бизнес идеи
огромное спасибо! все заработало!
Нет письма
Опубликовано пользователем Сергей
Раньше на сайте скрипт работал. Сейчас поменял в настройках скрипта другой емайл. И теперь ничего не приходит. Возвращал наза настройки - не приходит все равно.
Re: Нет письма
Опубликовано пользователем gorniy
Может, в спам попадают?
Повтор
Опубликовано пользователем Алексей
А как сделать чтобы при повторном нажатии Ctrl+Enter не открывалось новое окно?
Re: Повтор
Опубликовано пользователем gorniy
Увы, пока никак.
Кодировка
Опубликовано пользователем Дмитрий
Спасибо автору за скрипт. Ценнейшая вещь. Только вопросик один (на засыпку) есть. У вас, как я понял, используется кодировка windows-1251, а как бы ее на utf-8 переделать? Перекодировать сами файлы не вопрос, вот только будет ли она работать (не попрут ли кракозябры). Решил спросить прежде чем что то делать.
Re: Кодировка
Опубликовано пользователем gorniy
Дмитрий, этот сайт тоже на utf-8, все нормально работает.
Просто нужно создать в папке со скриптом файл .htaccess и в нем написать:
AddDefaultCharset windows-1251
Новая версия
Опубликовано пользователем gorniy
Скрипт обновился до четвертой версии. Теперь выделенная ошибка обрамляется контекстом.
Модуль для Joomla 2.5
Опубликовано пользователем Алексей Дементьев
Сегодня сделаю из этого плагина - модуль для Joomla 2.5
Re: Модуль для Joomla 2.5
Опубликовано пользователем gorniy
Да, на здоровье))
Модуль для Joomla 2.5
Опубликовано пользователем Алексей Дементьев
Вроде работает (http://spb-webmaster.ru/news/64-mistakes.html)
Re: Модуль для Joomla 2.5
Опубликовано пользователем gorniy
Ok))
Хром
Опубликовано пользователем Дмитрий
Здравствуйте. Скрипт отличный. Работал, работал, а сейчас перестал работать в Хроме. Что может быть?
Хром
Опубликовано пользователем gorniy
Адрес сайта?
Интересно... Как перестал
Опубликовано пользователем Дмитрий
Интересно... Как перестал работать сам, так сам и заработал :)
Re: Интересно...
Опубликовано пользователем gorniy
Волшебство прям)))
Notice: Undefined index: submit
Опубликовано пользователем Александр
Здравствуйте! Огромное спасибо за скрипт) скоро буду использовать)
по поводу нотайсов - это плохо, но не смертельно обычно) Решил я так:
вместо if($_POST['submit']) написал if(isset($_POST['submit']))
и добавил if(!isset($_POST['mess'])) { $_POST['mess'] = 'Ошибка'; }
может и не правильно, я ж гуманитарий)
Кодировки все норм, перевел все файлы в utf-8, внутри файлов поменял cp1251 на utf-8 и норм)
Спасибо!
Опубликовано пользователем gorniy
Александр, спасибо за участие))
Не корректно работает
Опубликовано пользователем Дмитрий
Не могу понять, не приходит на почту инфа из поля Коментарий... в чем может быть дело? (остальное приходит)
сам себе злой буратино... не
Опубликовано пользователем Дмитрий
сам себе злой буратино... не внимание приводит к косякам...
вопрос закрыт
Mistakes + Yii
Опубликовано пользователем Alex D
Добрый день! Спасибо за замечательный модуль. Я использовал его еще пару лет назад, но теперь на новом сайте под Yii прикрутил в качестве расширения. Пришлось повозится (мало опыта в создании расширений) но сделал. У вас в последней версии есть несколько некритических ошибок в коде (mistakes.php):
1) Вылазят Notice на некоторые переменные (типа POST)
2) Переменная mess вообще надо удалить из отсылаемого письма ('.$_POST['mess'].)
3) у вас идет <input но потом он закрывается </textarea>
А так - все супер - спасибо!
Mistakes + Yii
Опубликовано пользователем gorniy
Спасибо, Alex D! Не могли бы вы поделиться своим вариантом с общественностью?))
Пожалуйста!
Опубликовано пользователем Alex D
Вот тут находится архив с пояснениями:
https://dl.dropboxusercontent.com/u/89701912/Mistakes.zip
В связи с требованиями разрабатываемого сайта в проекте есть еще кое-какие изменения
1) Проект переделал на utf-8
2) Все надписи - на украинском.
В любом случае, поменять обратно строки на другой язык не составит труда для того кто хочет внедрить виджет.
Если будут проблемы с интеграцией у кого-то - пишите, отвечу.
Спасибо!
Опубликовано пользователем gorniy
Спасибо, Alex!
Адаптировал и на TP2
Опубликовано пользователем botyk
Адаптировал и на TP2
http://torrentpier.me/threads/mistakes-otpravki-soobschenij-ob-oshibkax.26569/
Отличный скрипт
Опубликовано пользователем Евгений
Это просто мега скрипт!
все коменты перечитала-не пойму все равно
Опубликовано пользователем vizushka
Добрый день!
Извиняюсь за тупой вопрос:)
у меня на сайте кодировка UTF-8, я как описал Alex D доложила в папку файлик .htaccess и в сообщении, которое приходит на почту само слово, в котором ошибка-оно читается нормально, а все остальное, включая форму на сайте-все в закорючках:(( вот сайт polus-holoda.info
если сможете помочь-заранее спасибо!!!
Страницы
Добавить комментарий