Страниц (3): [1] 2 3 »
Найдено сообщений: 31 |
Икар |
Отправлено: 30 декабря 2010 — 12:24 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
У error_reporting (...); много функций, можно самые критичные ошибки оставить, а оповещения отключить.
Спойлер (Отобразить)Цитата:Сообщения об Ошибках
E_NOTICE
По умолчанию уведомления не выводятся и указывают, что скрипт обнаружил нечто, что может указывать на ошибку, но может также являться и нормальным выполнением скрипта. Например, попытка доступа к значению переменной, которое не установлено, или вызов stat() в файле, который не существует.
E_WARNING
По умолчанию предупреждения выводятся, но не прерывают выполнение скрипта. Они указывают на наличие проблемы, которая должна быть отловлена скриптом до выполнения вызова. Например, вызов ereg() с неверным регулярным выражением.
E_ERROR
Ошибки также выводятся по умолчанию, и выполнение скрипта останавливается после возврата из функции. Они указывают на ошибки, которые не могут быть устранены внутренними методами, как, например проблемы распределения памяти.
E_PARSE
Ошибки разбора могут генерироваться только разборщиком. Код выводится здесь только для полноты данных.
E_CORE_ERROR
Похоже на E_ERROR, за исключением того, что оно генерируется ядром PHP. Функции не должны генерировать этот тип ошибок.
E_CORE_WARNING
Похоже на E_WARNING, за исключением того, что оно генерируется ядром PHP. Функции не должны генерировать этот тип ошибок.
E_COMPILE_ERROR
Похоже на E_ERROR, за исключением того, что оно генерируется машиной Zend Scripting Engine. Функции не должны генерировать этот тип ошибок.
E_COMPILE_WARNING
Похоже на E_WARNING, за исключением того, что оно генерируется машиной Zend Scripting Engine. Функции не должны генерировать этот тип ошибок.
E_USER_ERROR
Похоже на E_ERROR, за исключением того, что оно генерируется в PHP-коде с использованием PHP-функции trigger_error(). Функции не должны генерировать этот тип ошибок.
E_USER_WARNING
Похоже на E_WARNING, за исключением того, что оно генерируется с использованием PHP-функции trigger_error(). Функции не должны генерировать этот тип ошибок.
E_USER_NOTICE
Похоже на E_NOTICE, за исключением того, что оно генерируется с использованием PHP-функции trigger_error(). Функции не должны генерировать этот тип ошибок.
E_ALL
Все вышеперечисленные. Использование этого уровня error_reporting будет выводит все сообщения об ошибках.
Как видно из сообщения об ошибке - E_NOTICE нужно исключить из показываемых ошибок, т.е. указать все типы показываемых ошибок, за исключение этого. Синтаксис можно подсмотреть в ссылке.
Скорее всего сообщение появляется из-за того, что я id присваиваю не число (= номеру пользователя), а ip или как в последнем случае (что бы не было задвоения) - имя робота.
(Добавление)
gudman пишет:
забегая вперед скажу, что с Александром мы все ошибки сегодня попроавили!
Он завтра обещал все опубликовать в теме....
С удовольствием почитаю... фу, блин, хотя б не одному мне мозгой шевелить... |
Икар |
Отправлено: 30 декабря 2010 — 10:34 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
electron пишет:Икар пишет:CODE:error_reporting (0);
не знаю кому как, а мне это ни о чем не говорит...
Когда установил форум, то сразу же заметил, что в рабочей версии форума выводятся все ошибки. Это делается в файле include / common.php функцией
CODE:error_reporting (E_ALL);
(описание этой функции можете почитать например тут:
CODE:http://www.phpclub.net/manrus/f/error-reporting.html
)
ИМХО: в рабочей версии так быть не должно - зачем светить пути файлов в ошибках, когда что-либо работает не так - технические ошибки хостера или ещё какие-либо глюки.
Поэтому я отключил все ошибки, изменив покаазнную строчку на
CODE:error_reporting (0);
Ошибки пропали!!!
Выводимая ошибка не является критической, а просто предупреждение (которое выводит php в режиме error_reporting (E_ALL). Предупреждения отключаются - исправлением на error_reporting (0); |
Икар |
Отправлено: 29 декабря 2010 — 21:53 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
electron
1) Если указанным Вами способом изменить стили, то при наведении на бота - цвет меняться не будет, а будет оставаться какой есть... (т.е. тут больше оформительская поправочка).
2) Ну, в каком порядке будут размещаться Посетители форума, это тоже Воля Администратора, но логически - правильно: Сначала живые посетители, потом боты...
gudman
Должно сработать только при появлении новых ботов, которые появятся после изменения кода.
Что касается ошибки -
CODE:error_reporting (0);
в помощь!!! |
Икар |
Отправлено: 29 декабря 2010 — 16:55 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Рад, что получилось объяснить установку доступно.
Да, есть такое, что боты с разными ip появляются в списке дважды.
Решение с ходу такое (нет времени проверить, но попробуй):
В тексте Тексте функции OnlineLog() из /include/ fm.class.php находим код:
CODE:if (!empty($info['b'])){
$info['id'] = $this->_IP;
$this->_OnlineIds[$info['id']] = 1;
$info['n'] = $info['b'];
$class = "robot";
$output[] = '<a class="'.$class.'" title="'.$info['b'].'">'.$info['n'].'</a>';
$this->_OnlineRobots++;
break 1;
}
else
{
$this->_OnlineGuest++;
break 1;
}
и меняем
CODE:$info['id'] = $this->_IP;
на
CODE:$info['id'] = $info['b'];
В этом случае должно пропасть задвоение бота.
Но при наведении на бота исчезнет показ ip, а будет показ названия Бота. |
Икар |
Отправлено: 20 декабря 2010 — 08:40 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Umbr пишет:У меня вопросы по описанию установки:
Икар пишет:1) Добавляем новый класс
В какое место ставить?
Строки текста показаны обычным шрифтом, что следует добавить и конкретно куда - выделено.
Umbr пишет:
Цитата:3) (для стиля Invision2), - в других стилях этого НЕ СДЕЛАЕТЕ!
Предыдущие стоки подходят или только те которые следуют дальше?
Пункт 3) только для стиля Invision2, для других стилей - этот пункт пропускаем.
Umbr пишет:
Полностью "заремарить текст", это перед каждой строкой прописать // или достаточно ставить их перед определённым блоком? Можно ли всё оформить в классическом варианте: "найдите - замените"?
Если Вам удобнее, то вместо "заремарьте" - читайте "удалите". Я текст ремарю, поскольку, возможно, когда-нибудь потребуется посмотреть - что было в классическои исполнении. Что конкретно ремарить - показано в кодах, в строках начинающихся с //.
Umbr пишет:
Это добавление "привлекает" роботов или просто фиксирует их вход?
Просто фиксирует вход и показывает присутствие. |
Икар |
Отправлено: 20 декабря 2010 — 00:04 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Спасибо за перенос.
Получается, что всё готово. Попробывал бы кто установить себе это дополнение, что бы быть уверенным, что ничего не забыто.
Дальше, думаю, стоит подумать над тем - как просматривать ботов в темах... |
Икар |
Отправлено: 19 декабря 2010 — 20:43 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Дядя Митя пишет:Икар пишет:Тогда можно будет тему переносить в список дополнений.
Переносить и как-то это всё оформить более понятно, так чтоб как по одной инструкции а не прочитав несколько страниц. Посмотрите как оформленны другие моды на форуме и постарайтесь сделать так. Просто все уже привыкли к стилю изложения.
Дядь Митя - все мои манипуляции изложены в первых двух сообщениях темы.
Для внедрения нужно проделать 5 шагов - это много в сравнении с другими дополнениями.
=================================================
=================================================
Ю-ху-ху!!! Получилось словить ботов!!! (см. прикрепленную картинку)
=================================================
=================================================
Прошу модераторов перенести первые МОИ два сообщения (где рассказано про установку) этой темы в Дополнения. Описание для Invision2 подкорректирую и займусь внедрением у себя этого дополнения под дистрибутивный стиль. Все манипуляции постараюсь подробно описать. |
Икар |
Отправлено: 19 декабря 2010 — 11:29 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Так в списке пользователей, посетивших страницу за последние 15 минут, пока бота не увидел. Вчера снова текст "ловли" подизменил.
Проимитировал бота на Internet Explorerе - ловя в заголовке $_SERVER['HTTP_USER_AGENT'] название 'Mozilla/4.0' (мой такой выдаёт - он правда не обновлённый). При этом в FireFox бот Mozilla/4.0 появился, а через некоторое время (скорее всего те самые 15 минут) - пропал. Держался бот в списке даже после закрытия Internet Explorera. Т.е. всё заработало как нужно.
Хотелось бы, что бы это было последнее изменение.
Как увижу нормального бота в списке 15-минутников, сделаю скрин. После этого посмотрю изменения дистрибутивного стиля (сейчас всё делаю для Invizion2) - изменения там незначительные. Что куда надо подставлять - подробнейше опишу.
Тогда можно будет тему переносить в список дополнений. |
Икар |
Отправлено: 18 декабря 2010 — 06:33 • Тема: Мод: Усовершенствование отображения статусов пользователей • Форум: Модификации и дополнения |
Ответов: 37 Просмотров: 0
|
Меня на форуме недавно упрекнули, что Админ какой-то невзрачный... ничем не выделяется от остальных пользователей...
Решил выделиться. Сделал фон своих постов уникальным и отличным от остальных пользователей. Что получилось - пример смотрите в картинке внизу (Админ - Ikar) или в любой теме форума из подписи, где отписывал Ikar.
Методика проста и состоит в следующем:
1) В topic.php ищем место, где объявляются переменные
CODE:$username = ... (там длинная строчка);
$usertitle = $users[$member_id]['usertitle'];
$teamcon = $users[$member_id]['team'];
И перед этим вставляем
Цитата:$post2admin = ($member_id != 1) ? '' : 'style="background: #FFB6C1"';
Хочу обратить внимание, что цвет фона задаётся в выделенном тексте.
Для изменения воспользуйтесь Таблицей цветов HTML (если не знаете, что это такое - введите в Яндексе "Таблица цветов html" и увидите соответствие кодов #000000 - #FFFFFF различным цветам).
2) В файле templates / [ваш стиль] / topic_data.tpl находим теги <tr> с классом class="post2" и после определения класса вставляем {$post2admin}.
- Для дистрибутивного движка (у меня InvisionExBB):
Цитата:<tr class="post2" {$post2admin}>
- Для стиля Invision2:
Цитата:<td valign="top" class="post2" {$post2admin}>
и
Цитата:<td width="100%" valign="top" class="post2" {$post2admin}>
ЗАМЕЧАНИЕ: цвет будет меняться для пользователя с № 1. Если админ с другим №n, то нужно подставить этот n в CODE:($member_id != n_админа) из 1).
Номера пользователей = названиям файлов в папке /members/
ВСЁ - ТЕПЕРЬ АДМИНА ВИДНО ЗА ВЕРСТУ!!!
Картинка для просмотра (Админ - Ikar):
============================================
============================================
Забыл ещё сказать, что можно изменить не только фон, но и цвет рамки свойством bordercolor (и другие стили тега td), т.е. тогда строка изпунка 1) заканивалась бы:
Цитата:... ? '' : 'style="background: #FFB6C1;bordercolor: #FFB6C1"'; |
Икар |
Отправлено: 17 декабря 2010 — 09:19 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
nikk Пожалуйста, удали своё первое высказывание из этой темы - уж совсем оно там ни к чему.
==================================================
==================================================
Исправил неправильный вывод!!!
Там косякнул в переменных вывода. Внес изменения в установку!!!
==================================================
==================================================
Искоренил причину возниконовения в ботах своего же Ip.
Внес изменения в установку!!!
==================================================
==================================================
Ещё прихода бота не видел, но он должен непремено появиться. Ведь Мой же "супербот" Mozilla появляется...
==================================================
==================================================
nikk - вот теперь готов помочь в установке.
Мути Денвер и вышли файлы, которые требуется изменить - какие конкретно, смотри у меня в архиве в первых сообщениях. |
Икар |
Отправлено: 17 декабря 2010 — 00:48 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
electron Теперь и мне ясно. Тогда, как будет готово и для оригинала дистрибутива переделаю...
Сейчас же ошибочка выползла:
Вот кусок функции function _OnlineLog в /include/ fm.class.php
Спойлер (Отобразить)CODE: $onlinedata[$sessid] = array(
'ip' => $this->_IP,
'n' => $this->user['name'],
'id' => $this->user['id'],
't' => $this->_Nowtime,
'in' => $where,
'pf' => $privateID,
'st' => $status,
'v' => $visible,
'ua' => $_SERVER['HTTP_USER_AGENT'],
'b' => $this->_IsSpider
);
foreach ($onlinedata as $id=>$info) {
if ($expire > $info['t']) {
// Решение проблемы актуальной даты последнего посещения
// Если пользователь уходит без нажатия кнопки "Выход" то после сдыхания его сессии
// мы обновим инфу в профиле о дате последнего посещения :)
if (!empty($info['id']) && file_exists('members/'.$info['id'].'.php')) {
$user = $this->_Read2Write($file, 'members/'.$info['id'].'.php');
$user['last_visit'] = $info['t'];
$this->_Write($file, $user);
}
unset($onlinedata[$id]);
continue;
}
if ($info['id'] != 0 && $info['n'] == $this->user['name'] && $id != $sessid) {
unset($onlinedata[$id]);
continue;
}
$this->_OnlineIds[$info['id']] = 1;
if ($show === TRUE) {
switch ($info['id']) {
case 0:
// Правка Николая Захаренкова
// $this->_OnlineGuest++;
// break 1;
if ($info['b'] !== FALSE){
$info['id'] = $this->_IP;
$info['n'] = $this->_IsSpider;
$class = "robot";
echo $info['n'];
echo $info['id'];
$output[] = '<a class="'.$class.'" title="'.$info['id'].'">'.$info['id'].'</a>';
$this->_OnlineRobots++;
break 1;
}
else
{
$this->_OnlineGuest++;
break 1;
}
// конец правки Николая Захаренкова
default: if ($this->exbb['visiblemode'] && $info['v']=== TRUE){
$this->_Invisible++;
break 1;
}
switch ($info['st']) {
case 'ad': $class = "admin"; break;
case 'sm': $class = "supmoder"; break;
case 'mo': $class = "moder"; break;
case 'ro': $class = "robot"; break;
default: $class = "noclass"; break;
}
$output[] = '<a href="profile.php?action=show&member='.$info['id'].'" class="'.$class.'">'.$info['n'].'</a>';
$this->_Members++;
break 1;
}
}
}
Внем создаётся массив и обрабатывается вывод тех, кто сейчас присутствует на сайте. К сожалению комне зашел один только безимянный робот, которого нет в списке, и что бы его увидеть присвоил имя = его ip. Да - он появился в онлайне, НО - не вошел ни в боты, ни вгости, ни в пользователи.
Т.е. дело было так: откопировал, когда боты были ещё безимянными:
Цитата:<td class="row1">За последние 15 минут форум посетило: 2 (ботов:0, гостей: 0, зарегистрированных: 1, скрытых: 0)<br>
<div><a href="profile.php?action=show&member=1" class="admin">ikar</a> » <a class="robot" title="95.106.99.97"></a></div>
Было интересно - кто у меня тут бьётся, оказалась местная Рязанская сеть:
95.106.0.0 - 95.106.255.255 RU-INECO-20081202.
Естественно, что такого названия в списке нет.
Всё - ложусь спать! Завтра продолжу!
---------------------
пользуйтесь пожалуйста функцией спойлера при публикации большого количества текста.
модератор |
Икар |
Отправлено: 16 декабря 2010 — 20:19 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Сначала думаю - оттестить надо...
1) Посмотреть посещение бота
2) Всё ли правильно считается в статистике (а то может боты в подсчет не пойдут)?
3) Правильно ли удаляется присутствие?
И другие мелочи.
Как будет всё готово - тогда хоть куда!
(Добавление)
Во втором своем сообщении (в начале темы) выложил все измененные файлы (какие у меня сейчас на хостинге)!!! |
Икар |
Отправлено: 16 декабря 2010 — 19:00 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
По первому вопросу - прикрепил свой board_body.tpl - строка 51 (она длинная) - вконце.
А вообще - это мелочь, которая выводит слово бот в список:
Цитата:Кто в on-line? [ Администратор, Супермодератор, Модератор, Бот, Пользователь ]
electron пишет:2. зачем "ремарить" строки, а потом их же дублировать но уже с изменнеиями. не понимаю...
Ответ в Посте выше!!!
Не дубасить, а оставить на всякий случай заремаринные, а рядом прописать нужные.
CODE://Старые строки
Новые строки
electron пишет:3. есть предложение собрать всю инструкцию в один файл .txt или .doc и выложить ее в первом посте, дабы убрать ту кашу что создалась в данной теме
Уже прописал все в первых постах.
==============================================
Протестировал нахождение бота на сайте, внеся в список ботов - Mozilla.
Зайдя на форум за гостя браузером FireFox (у которого заголовок начинается с "Mozilla...", т.е. можно сказать - проимитировал бота.
В списке посещаемых в течении последних 15 минут - Mozilla появился , но бота поисковика ещё не видел... Сегодня буду после 23.00 наблюдать. |
Икар |
Отправлено: 16 декабря 2010 — 17:07 • Тема: Дополнение: Определение пауков поисковиков • Форум: Модификации и дополнения |
Ответов: 91 Просмотров: 0
|
Были у тебя строки такие
Бла-бла-бла...
Бла-бла-бла...
Бла-бла-бла...
а тебе их надо заменить на Бло-Бло-Бло, но так, что бы и эти были видны на всякий случай, ты делаешь:
//Бла-бла-бла...
//Бла-бла-бла...
//Бла-бла-бла...
Бло-Бло-Бло
Бло-Бло-Бло
Бло-Бло-Бло
Это и есть - ремим текущие и вставляем на нужные.
(Добавление)
nikk пишет:
этих строк вообще нет в моем файле :
Вот я смотрю код Вашего форума и вижу:
<span class="moder">Модератор</span>
Эта надпись как-раз и получается из той, "Которой у вас нет"!!!
Просто не может быть, что бы у Вас той надписи не было. |
|
Страниц (3): [1] 2 3 »
|