Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

MyDC.ru _ Скрипты с MySQL [PtokaX] _ ChatLogsMySQL

Автор: Wariner 21.4.2009, 20:28

Название скрипта: ChatLogsMySQL
Версия скрипта: 1.0(финальная версия)
Версия API: API 2
Автор: Wariner
Особенности: работа с MySQL
Описание скрипта:

v 1.0
- Исправленны некоторые недочёты.

v 1.0 RC5
- Добавлен просмотр сообщений по IP
- Упорядочено тело скрипта
-Добавлена корректировка времени
-Добавленно шаблонность сообщений
-Добавлен реконект к БД
-Исправленно пару мелочей

v 1.0 RC4
- Поправленно несколько мелочей

v 1.0 RC3
- В настройку вынесено меню
- Добавлена возможность логировать команду "me" (опционально)
- Исправлено логирование смайлов

v 1.0 RC2
- Просмотр сообщений ника( за сегодня, за дату или за период )
- Просмотр общего лога( за период )
- Таблица исключений записи в лог
- Запись ошибок скрипта в таблицу + контроль неправильных запросов
- Теперь не логируются команды
- Исправлено пару мелочей

v 1.0 RC1
- Сохраняет в БД сообщение юзера время и дату его написания
- Можно посмотреть лог за число
- Опционально сделана посылка в чат n последних сообщений из БД

PS: БД надо создавать вручную! Таблицы создадутся сами!
PPS: Принимаются предложения по увеличению функционала скрипта!

 ChatLogsMySQL.lua ( 16.31 килобайт ) : 454
 

Автор: THE STRELOK 24.4.2009, 17:57

Со слов автора скрипта(st.FILA):

Цитата
Это и было написано за 5 минут, в любом случае то что Стрелок просил я сделал. Эти скрипты лишь заготовка для полноценной, хорошо оформленной страницы. ГНУ лицензию на скрипты ставлю - берите и модифицируйте как хотите)))


Какие возможности скрипта:

Войдя на страницу, появится 3 вида поиска:
Показать последние N фраз чата
Показать сообщения нужного вам ника
Показать лог за нужное вам число

 WebChatLogs_realise.rar ( 1.63 килобайт ) : 132
 

Автор: Setuper 24.4.2009, 18:07

ппц на такую ерунду лицензию ставить, да к тому же лицензия должна быть оформлена (краткое описание и ссылка на полное описание).

Это тоже пишется не более чем за 5 минут. К чему весь этот пафос?

Автор: OtshelnikFm 25.4.2009, 23:22

Хаб в локалке оао Волготелеком. Доступ с диапазонов на 88.... 78... и 95... из инета не открывал - на трафик людей чтобы не сажать.

Вопрос PomanoBу и знатокам - выводится крякозябрами лог чата на сайт:


хотя движок wordpress с кодировкой utf-8. База mysql (таблицы тоже). 3 файла из chatlogs.zip - преобразовал в notepad ++ в utf-8 без bom всё равно крякозябры.

p.s - не актуально - т.к. с новой таблицей выводится ошибка
Цитата
Warning: mysql_result(): supplied argument is not a valid MySQL result resource in www\........................\send.php on line 32
cообщений всего
- требуется модернизация

Автор: Setuper 25.4.2009, 23:32

http://mydc.ru/ipb.html?s=&showtopic=1508&view=findpost&p=11774

Автор: Wariner 25.4.2009, 23:32

может ты просто не так прописал название таблиц? посмотри внимательнее там ещё префикс есть! ибо структуру таблицы я не менял и запросы должны остаться теже!

Автор: OtshelnikFm 26.4.2009, 0:25

Точно префикс в файле send.php MainLogs (там их 2) надо заменить на chatlogs_MainLogs

По поводу кодировки базы mysql ссылку на которую дал setuper - база в utf-8 (как раз она и используется для вордпресса) - т.е. всё нормально

Посмотрел записи в таблице chatlogs_MainLogs - там крякозябры. Получается от птоки до базы mysql - проблема где-то тут. Вопрос - как передавать данные от хаба в базу в utf-8?

Автор: Setuper 26.4.2009, 1:08

PtokaX в скриптах использует кодировку cp1251, поэтому нужно либо менять кодировку на лету в utf8, либо делать базу данных также в кодировке cp1251.

По ссылке, которую я дал, вроде всё ясно написано!

Автор: OtshelnikFm 26.4.2009, 8:51

Я понимаю это. Но базу блога вордпреса менять на 1251 не хочу. Как сделать "на лету" перевод в utf-8?

Автор: Wariner 26.4.2009, 9:11

http://mydc.ru/ipb.html?s=&showtopic=334&view=findpost&p=2276

Автор: PomanoB 26.4.2009, 12:10

Сейчас сделаю новую версию, там всё будет

Вот новая версия
Бд обязательно должна быть в cp1251, но в config.php можно поставить кодировку вывода на utf-8
viewerror.php - просмотр ошибок скрипта, логин и пароль задаются в config.php, попытка войти при неправильном пароле заносится в таблицу ошибок вместе с ип адресом)
 chatlogs.zip ( 34.41 килобайт ) : 69

Автор: OtshelnikFm 26.4.2009, 18:53

Большое спасибо за скрипты всё работает!

PomanoB - забыл кнопку входа в viewerror.php (энтер тоже не работает)



А по поводу:
Цитата
Бд обязательно должна быть в cp1251,
- необязательно - сейчас она в utf-8 и вот результат ( выбрал только
Цитата
Использовать при выводе кодировку UTF-8 или нет; использовать - true:
в config.php)


Wariner: скрипт не берет смайлы

Вот грейлинк чат:
Цитата
[18:59:22] <Volchara> Молодцы мужики качественный хаб!!! (для админов)
[19:00:27] <Otshelnik-Fм> Ну спасибо
[19:01:39] <Volchara>
[19:03:51] <Slav> :fig:
[19:03:59] <Slav> @@
[19:13:02] <Slav> :pila:
[19:13:42] <Slav>
[19:13:59] <Slav> :draca:
[19:14:28] <Slav>
[19:15:14] <Otshelnik-Fм> Советую перестать флудить смайлами - slav - намёк ясен?


а это вывод по команде из скрипта:
Цитата
[19:26:02] <> Лог главного чата за 26.04.2009(сегодня):

====================================================================================================
№ Время Ник(IP) Сообщение
====================================================================================================
8. 18:59:22 Volchara(88.147.210.224) Молодцы мужики качественный хаб!!! (для админов)
9. 19:00:27 Otshelnik-Fм() Ну спасибо
10. 19:15:14 Otshelnik-Fм() Советую перестать флудить смайлами - slav - намёк ясен?
====================================================================================================

Это видно на скриншоте сверху.
Но на скриншоте фраза "Молодцы мужики качественный хаб!!! (для админов):орден:" - заканчивается смайлом. А как видно по выведении командой в чат - тут этого смайла нет
Цитата
8. 18:59:22 Volchara(88.147.210.224) Молодцы мужики качественный хаб!!! (для админов)
9. 19:00:27 Otshelnik-Fм() Ну спасибо

Автор: Wariner 26.4.2009, 19:06

проблема со смайлами в начале строки решается так

Код
function ChatArrival(tUser, sData)
    local sData = sData:sub(1,-2)
    local sCmd = sData:match"%b<>%s+([!+-/*]%S+)"

в конце строки я не знаю в чём проблема! у меня нормально работает! В следующей версии исправление будет

Автор: PomanoB 26.4.2009, 19:23

Ентер не работает в FireFox, не знаю почему, в Google Chrome нормально заходит по ентеру
Изменяем

Код
<input type="text" name="passwd" id="passwd" />
(строка 137)
на
Код
<input type="password" name="passwd" id="passwd" />
<br />
<input type="submit" value="Войти" />

Автор: mariner 26.4.2009, 19:30

Код
local sMenu = "Ваше меню"       -- Меню
local sSubMenu = "История чата"    --Подменю


Всетаки стоит такое добавить!

Автор: OtshelnikFm 26.4.2009, 19:33

Браузер opera ac 3.6.5. Добавил исправления - помогло

Автор: serrrios 26.4.2009, 20:49

Огромное спасибо Wariner и PomanoB.

Прикрутил себе на джумлу + к стате StatPX. Работает отлично..

Автор: Nickolya 27.4.2009, 13:08

Выражу небольшую просьбу к тов. PomanoB'у, простите, не знаю как величать big_smile.gif Премного буду благодарен, да и не я один, если напишите мануальчик по работе с выводом данных на страницу, а именно аякусу, тем библиотекам, как я понимаю, стандартным, что применяются в Вашем скрипте.

Автор: Serx 27.4.2009, 13:43

При попытке запуска скрипта появляется табличка ошибки:

Код
PtokaX DC Hub 0.4.1.1:PtokaX.exe - Не удалось найти компонент
Приложению не удалось запуститься, поскольку LIBMYSQL.DLL не был найденю Повторная установка приложения может исправить эту проблему.

А в окне скриптов надпись:
[16:39] Синтаксис error loading module 'luasql.mysql' from file 'C:\Program Files\Ptokax_0.4.1.1\libs\luasql\mysql.dll': Не найден указанный модуль.

чего нехватает?

Автор: Setuper 27.4.2009, 14:02

в папке libs должны быть файл libmysql.dll и папка luasql с файлом mysql.dll

Автор: OtshelnikFm 27.4.2009, 14:12

Присоединяюсь к Nickolya. Очень хочется такой мануал по выводу из бд

Предлагаю закрепить эту библиотеку в ветке "Скрипты с MySQL"

Автор: Setuper 27.4.2009, 14:35

Создал и закрепил тему.
А файлы аттачить по нескольку раз не нужно. Достаточно дать ссылку на уже приаттаченный файл. Нужно экономить память форума, да и путаницы не будет с файлами.

Автор: Serx 27.4.2009, 15:01

Библиотеки в папке libs в папке птоки есть. База и пользователь в MySQL созданы.
Старая версия скрипта тоже отказывается запускаться. MySQL входит в состав XAMPP и работает. В чем проблема не понимаю :(

Автор: Setuper 27.4.2009, 15:09

http://mydc.ru/topic1851.html

Проблема в недоступности библиотеки LIBMYSQL.DLL проверь есть ли данная библиотека в твоём mysql сервере. Если есть, то попробуй её скопировать в папку libs. Возможно ты используешь mysql сервер старой версии. Или скачай и установи новый сервер http://mydc.ru/r/?http://www.mysql.ru/download/

Автор: Serx 27.4.2009, 17:22

Скрипт включился когда я файлы из libs положил в корневую директорию PtokaX (т.е. без папки libs)

Автор: Setuper 27.4.2009, 17:40

2Serx: Можешь выложить свой файл PtokaX.exe? Что-то не верится, что папка libs не работает.
P.S. Папку libs следует создавать в папке, где лежит ptokax.exe, а не в папке scripts

Автор: Serx 27.4.2009, 18:20

Предлагаю сделать в скрипте выбор вывода лога в чат или в приват и возможность (ещё лучше если она будет отключаемой) логирования строчек действий (начинающихся с /me !me +me)

2 Setuper: Не думаю что у меня какая-то особенная Ptokax... никакими HEX-редакторами я в ней не ковырялся... но я также не представляю с чем это могло быть связано.

Автор: Setuper 27.4.2009, 19:27

Ты где создаёшь папку libs? У меня всё работает.

Автор: Serx 27.4.2009, 21:43

У меня сейчас тоже все прекрасно работает.
Создавал в папке Ptokax_0.4.1.1 там-же где и Ptokax.exe

Ещё бы неплохо сделать фильтр лога по IP (есть товарищи которые иногда меняют ники)

Автор: fixx 28.4.2009, 16:39

возвращаясь к кодировке.
Ничего непомогает .
Либо ?????????????????????? вместо слов по-русски, либо вообще ничего. И ники с разным регистром букв тоже "???", независимо от латиницы или русского.
Тему прочитал, все ссылки посмотрел, все сделал, как написано, но "????????????????????" - лучший результат. Если просто создавать базу по умолчанию UTF-8, то русские буквы просто отсутствуют в таблице.
Есть решение? Сам никак недопру, в чем дело.

Цитата
1 - - 2009-04-28 - [17:25:42] <fixx> ??
2 - - 2009-04-28 - [17:25:43] <fixx>
3 - - 2009-04-28 - [17:25:45] <fixx> ?
4 - - 2009-04-28 - [17:25:51] <fixx> kgkg
5 - - 2009-04-28 - [17:25:54] <fixx> kgkg
6 - - 2009-04-28 - [17:26:24] <fixx> ye xnj pf [eqyz
7 - - 2009-04-28 - [17:26:32] <fixx> ?? ??? ?? ???
8 - - 2009-04-28 - [17:26:34] <??> ? ???? ???? ????????? ??? sony ericsson k7ooi
9 - - 2009-04-28 - [17:31:02] <??> sonyericsson k700i ????????? ?
10 - - 2009-04-28 - [17:39:07] <Apceniy> ????? ? ???? ???? ?????????? ??? ?? ?????????? ??? ???
11 - - 2009-04-28 - [17:41:31] <NASH> ? ??? ??? ??

Автор: Wariner 28.4.2009, 20:06

произошло обновление версии до RC3, смотрите первый пост!

Автор: Setuper 28.4.2009, 20:46

Сразу нашёл опечатку и лишние скобки))))

Код
if (not sCmd or iMe == 1 and (sCmd == "!me" or sCmd == "+me" or sCmd == "/me") or sCmd == "[!+/]me") and not sMsg:match"is kicking" and tExNick[tUser.sNick] ~= 1 then


Зачем ставить лишние скобки, когда достаточно знать приоритеты выполнения операций: http://mydc.ru/r/?http://www.lua.ru/doc/2.5.6.html

Автор: OtshelnikFm 28.4.2009, 22:00

Можно исправить - (выбираю смотреть ошибки скрипта) - когда таблица ошибок пуста выкидывает в чат команду !errorsmainlogs
и в отладчике птохи пишет:

Цитата
[22:46] Синтаксис ... Интернет\PtokaX 0.4.1.1\scripts\ChatLogsMysql.lua:273: bad argument #1 to 'format' (string expected, got nil)

Повторный запрос выдает все в чат:
Цитата
====================================================================================================
№ Дата и время Ошибка
====================================================================================================
1. 2009-04-28 22:46:32 :273: bad argument #1 to 'format' (string expected, got nil)
====================================================================================================

Но юзверям команда спалилась (понимаю что они не могут ее использовать - но все равно как то не по себе)
а можно в меню добавить еше "посмотреть лог чата за вчера" неудобно вводить дату когда приходишь домой в 3 ночи...или отсутствуешь с вечера , а утром хочется с больной головой глянуть лог... и начинаешь вспоминать дату big_smile.gif

А еще можно было бы воткнуть сюда лог команд хаба (хотя это уже другой скрипт-и отбор по рейтингу команд за сутки)

Автор: Wariner 28.4.2009, 22:36

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

Автор: Setuper 28.4.2009, 23:31

Наоборот получается не наглядно. Когда много скобок сложно уследить где какая закрывается, да вообще получается какая-то непонятная куча скобок. Если запомнить, что в самую последнюю очередь выполняются операторы and и or, то можно значительно упростить и не ставить лишние скобки.

Автор: Serx 28.4.2009, 23:57

Скрипт работает на ура... Поскольку я не разбираюсь в построении HTML (или других) страниц, то появилась только небольшая "проблема" которая связана с отображением лога на странице...

2 PomanoB После пары дней в логе накопилось больше 1000 сообщений... при выборе в настройках вывода по 20 строк на странице появляется больше 50 ссылок на следующие. И если так пойдет и дальше они будут загромождать страницу. Если возможно сделайте пожалуйста удобную навигацию вроде такой:

или если не затруднит такой:

Автор: Setuper 29.4.2009, 0:00

Самая удобная навигация - это как на данном форуме big_smile.gif

Автор: PomanoB 29.4.2009, 20:17

 chatlogs.zip ( 34.85 килобайт ) : 46

Вот новая версия, фильтр по ип, более удобный фильтр по нику и дате
Новая навигация, как в SMF, ихняя версия мне больше всех нравится)

Автор: Serx 29.4.2009, 22:04

Спасибо big_smile.gif интересная возможность нажатием по нику или дате сразу фильтровать по этим параметрам... логичным продолжением по-моему был бы показ IP с такой-же удобной фильтрацией.

И вот у меня появилось ещё 1 предложение: кол-во показываемых сообщений на страницу жестко задается в конфиге... а может предоставить этот выбор пользователю? Чтобы он мог выбрать как ему удобно по сколько сообщений на странице выдавать.

Автор: OtshelnikFm 30.4.2009, 1:06

Цитата
\scripts\ChatLogsMysql.lua:273: bad argument #1 to 'format' (string expected, got nil)
вот что...

Автор: PomanoB 30.4.2009, 21:48

Вот, показывается ип, и поле для выбора количества собщений на страницу
 chatlogs.zip ( 38.26 килобайт ) : 51

Автор: fixx 30.4.2009, 22:30

И еще раз. Кодировка не проходит ни при каких обстоятельствах. Помогите, плиз.
Все русские буквы отображаются (в базе ) вот так:
???????????? ???? ????
мне посоветовали в библиотеках ковыряться, но если у всех работает, а у меня нет, то дело не в библиотеках.
Птока у меня 4.1.1 сервис, сервер апач+мускул.
До мускула идут только ???????, если вернуть к кодировке по умочанию (ют8), то вообще ничего не отображается.
ЛЮДИ ДОБРЫЕ, ПОМОГИТЕ

Автор: PomanoB 30.4.2009, 22:34

Добавь в my.ini в после [mysqld]
skip-character-set-client-handshake

Автор: fixx 30.4.2009, 22:53

Цитата(PomanoB @ 30.4.2009, 22:34) *
Добавь в my.ini в после [mysqld]
skip-character-set-client-handshake

непомогает. Я и сетупера почитал, и весь форум, но неполучает база русского, в лучшем случае "???????????????"
Я щас расплачусь, даже мой друг - веб программист - пишет:
Цитата
mysql_connect($adress, $user, $passwd);

mysql_query("SET NAMES cp1251");


типа так должно быть где-то. Но где, я так и непонял (он говорит, что в библиотеке, однако у всех работают библиотеки, а я один - рыжий?)
ПОМОГИТЕ ПЛИЗ! :(

Автор: Wariner 30.4.2009, 23:04

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

Автор: Setuper 30.4.2009, 23:08

Да потому что руки не оттуда растут.
10 раз уже написали что да как.

Автор: fixx 30.4.2009, 23:09

Цитата(Wariner @ 30.4.2009, 23:04) *
я в пастерянности.... впервый раз я запустил пшпмайадмин нажал создать базу cp1251 и всё работает... не понимаю почему проблемы такие.....

Вот. И я тоже в растерянности. Все так и сделал. (Хм.. может че перемудрил? .. А где там кнопочка создать базу cp1251? , а то я, следуя мануалу сетупера, создавал из командной строки..)

Автор: Wariner 30.4.2009, 23:24

я соврал. у меня они создаются автоматически в cp1251.

Автор: fixx 30.4.2009, 23:39

Ну вот, нашел я кнопку, вывесил там cp1251, все создалось, но таблицы несоздаются, подозреваю, что им пароль нужен, но при создании базы он не запросился. Вобщем мы с вами на разных планетах, видимо обитаем big_smile.gif

Цитата(Setuper @ 30.4.2009, 23:08) *
Да потому что руки не оттуда растут.

Их нет

Автор: mariner 30.4.2009, 23:48

Цитата(fixx @ 1.5.2009, 0:39) *
Ну вот, нашел я кнопку, вывесил там cp1251, все создалось, но таблицы несоздаются, подозреваю, что им пароль нужен, но при создании базы он не запросился. Вобщем мы с вами на разных планетах, видимо обитаем big_smile.gif


Их нет


http://mydc.ru/topic1828.html
Читаем и делаем. Способ с консолью подходит для венды.

Автор: fixx 1.5.2009, 0:42

Цитата(mariner @ 30.4.2009, 23:48) *
http://mydc.ru/topic1828.html
Читаем и делаем. Способ с консолью подходит для венды.

Молодец! Только это читано перечитано, сделано и так и по-другому, однако воз и ныне там.
Повторяю. Вебпрограммист - уважаемый в нашей Ивановской области - и тот грешит на библиотеки, что вы от меня хотите? Просто, прошу дайте мне, пожалуйста что-нибудь, учитывая что пользователя зовут chat и базу зовут chat .
Ну не хочет она читать русский с хаба, хоть убей. Читает с пхп, с сайта, который на 1251 - четко, проверил, а с хаба - куй! :(
Кстати создаю базу с кодировкой cp1251_general_ci может не то?

Автор: Setuper 1.5.2009, 1:21

Сделай запрос:

Код
SHOW VARIABLES LIKE 'char%';
и посмотри какие у тебя кодировки.

Есть ли у твоего пользователя chat привилегия SUPER ?

В самом скрипте, после соединения с базой данных (env:connect), можно дописать строку:
Код
con:execute"SET NAMES cp1251"

Автор: fixx 1.5.2009, 19:28

Код
character_set_client    utf8
character_set_connection    utf8
character_set_database    cp1251
character_set_filesystem    binary
character_set_results    utf8
character_set_server    utf8
character_set_system    utf8

ужос, а почему так?
привилегии SUPER нету.

Автор: Setuper 1.5.2009, 19:53

Потому что не прописал в настройках кодировки!

В файле my.ini

Код
[client]

default-character-set=cp1251
character-sets-dir="C:/MySQL/share/charsets/"

[mysql]

default-character-set=cp1251

[mysqld]

default-character-set=cp1251
default-collation=cp1251_general_ci
character-sets-dir="C:/MySQL/share/charsets/"
init-connect='SET NAMES cp1251'


Соответствующие пути до папки charsets свои надо прописать!

Уже в сотый раз пишу об этом. Уже надоело.

Автор: OtshelnikFm 1.5.2009, 20:16

В первый пост добавьте - "Нужно чтобы скрипт стоял в самом верху"

Романов - скрипт на сайте не фильтрует по нику пишет

Цитата
0 сообщений всего

Автор: PomanoB 1.5.2009, 20:35

Странно... У меня всё фильтрует)
Какая версия у тебя?
Посмотри может есть ошибки JavaScript'а ?
По остальным параметрам фильтрует?

Автор: OtshelnikFm 1.5.2009, 20:41

Блин - опера. в ней проблема. под интернет эксплорером все гуд на 100%. А опера почемуто не хочет именно по нику фильтровать, а под ip фильтрует

еще чуть-чуть и перейду на мозилу...

Автор: PomanoB 1.5.2009, 20:49

Переходи на Google Chrome )
Посмотри может ошибки какие-то есть на страничке ?

Автор: Wariner 1.5.2009, 21:07

Цитата(OtshelnikFm @ 1.5.2009, 21:16) *
В первый пост добавьте - "Нужно чтобы скрипт стоял в самом верху"

С какой целью?

Автор: OtshelnikFm 1.5.2009, 21:39

Нет - ошибок нет.. ну можно добавить кнопку - "обновить чат" (хотя с этим кнопка "применить" справляется). А в остальном - огромное спасибо - работает отлично!

Wariner - при загадочных обстоятельствах - вчера писал о ошибке - перестал логировать чат. Перезагрузка не помогла тогда я удалил таблицу и запустил скрипт и в самый верх его засунул. Логи идут

Автор: OtshelnikFm 4.5.2009, 8:32

1 числа писал - перестал логировать чат (тогда я подумал что может скрипт надо в самый верх). Сегодня обнаружил что на 3 день после сноса таблиц - перестал вновь записывать чат (31 сообщение записал и в ступор встал).

Автор: Wariner 4.5.2009, 17:30

ошибок нет? сегодня поставлю скрипт у себя.

Автор: OtshelnikFm 4.5.2009, 19:35

ошибок небыло никаких.

Сейчас перезапустил скрипт - логироваться чат начал.

Автор: fixx 6.5.2009, 19:13

Спасибо всем, с кодировками разобрался. Дело было в том, что я забыл в my.ini дефолтные строчки закомментировать. big_smile.gif
Незнал, что они там есть .
Да и немудрено, у меня этот файл весь в каментах, правда на английском. 480 строк с каментами. Трудно сразу разглядеть.

Автор: Wariner 6.5.2009, 21:36

скрипт работает 3 день(правда с отключением на ночь). Полёт нормальный!

Автор: OtshelnikFm 6.5.2009, 23:38

В том то и дело что отключаешь на ночь. Парни - кто тестирует, просьба ответьте, при постоянной работе хаба 3-4 дня без перезагрузки и отключения скриптов - логи у вас продолжает писать? У меня на хабе присутствует тишина как правило. Поэтому за 3 дня бывает только 30-40 сообщений. После скрипт перестаёт записывать чат... Может быть у вас он пишет 1000 сообщений в день - но проблема именно в длительном бесперебойном логе. У меня он так обрывал запись 2 раза и эти 2 раза я сносил таблицы и ставил все заново. Сейчас снесу 3 раз. Отпишусь позже что происходит.

p.s. - на базе mysql работает веб сервер на движке вордпресса - с ним ниразу такого не происходило. И еще - кодировка только utf-8!

1 запись 1 мая 2009 года. последняя была 5 мая 2009 - т.е. 4 дня закончилась она смайлом (дословно из записи:

Цитата
:curtsy:
)

в таблице ошибок - 0 записей!

Автор: mariner 6.5.2009, 23:52

работает. Ныне онлайн 6 дней. Система - линукс

Автор: Serx 7.5.2009, 0:06

Работает без перерыва чуть больше 9 дней... в базе 7749 сообщений... система Windows XP SP3
Не записываются фразы которые обрабатываются скриптами стоящими выше него (например антимат,антикапс и.т.п.) - это не проблема а просто как примечание ))
Пока что все отлично.

Автор: Wariner 7.5.2009, 6:37

конечно не обрабатывается, ведь эти скрипты после нахождения запретной фразы возвращают true, т.е. не пропускают сообщение!

Автор: fixx 7.5.2009, 12:08

Цитата(PomanoB @ 30.4.2009, 21:48) *
Вот, показывается ип, и поле для выбора количества собщений на страницу
 chatlogs.zip ( 38.26 килобайт ) : 51

При выводе на странице, помимо того, что должно быть, появляется сообщение:

Цитата
Strict Standards: strtotime() [function.strtotime]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Moscow' for '4.0/DST' instead in C:\AppServ\www\chatlogs\send.php on line 60

А так все работает, только бы это как-то поправить..
----------------------------------------------------------------
----------------------------------------------------------------
трое суток, скрипт работает. ошибок нет.

Автор: PomanoB 7.5.2009, 17:35

Строку 60
if (strtotime($_GET['i_date']))
меняем на
if (@strtotime($_GET['i_date']))

Автор: fixx 7.5.2009, 23:00

Цитата(PomanoB @ 7.5.2009, 18:35) *
Строку 60
if (strtotime($_GET['i_date']))
меняем на
if (@strtotime($_GET['i_date']))

=)
Спасибо. Вот теперь все как надо. big_smile.gif
Еще 3 месяца назад только в мечтах (без мускула) было, но вижу, что еще полгода, а то и меньше, и связка "хаб-сайт-форум" и, возможно, трекер будет реализована на уровне регистрации, раздач, чата и еще Бог знает чего.
Спасибо Всем еще раз. =)

Автор: Setuper 7.5.2009, 23:15

Насчёт регистрации - это наврятли. Уж слишком не оптимизированное дело получается с этой регистрацией. Надо переписывать хаб, для корректной работы регистрации через базу данных.

Автор: OtshelnikFm 8.5.2009, 2:02

хм...

что будет если строку

Код
local sBot = "logger"                     -- Имя бота


заменить
Код
local sBot = ""                     -- Имя бота
- т.е. не указывать имя бота?

дело наверное в ней было.

Автор: OtshelnikFm 8.5.2009, 22:14

Всю голову сломал уже.

Цитата
Произошла ошибка в тексте запроса! Команда не будети выполнена! Сообщите администратору!
скачивал отсюда самую последнюю версию. изменял только пароль и логин - т.е. только то что с mysql связано. Таблицы сносил. MySQL Server 5.0 версия... Что делать?

Автор: Wariner 11.5.2009, 22:06

при этом сообщении он записывает данные в лог ошибок. посмотри что там!

Автор: OtshelnikFm 12.5.2009, 0:24

Цитата
Произошла ошибка в тексте запроса! Команда не будети выполнена! Сообщите администратору!
- это пишет если выбираю посмотреть лог ошибок... и показывает это на все команды скрипта.

в таблице chatlogs_errors - пусто. Понятия не имею что произошло - как ведь все хорошо начиналось (комп и птоку не буду перегружать - иду на рекорд онлайна big_smile.gif-но думаю что проблема где-то тут.. хотя комп и птока работают в штатном режиме) Сорри конечно за маниакальный настрой, но все работают с веб скриптом Романова? - сейчас его уберу и посмотрю (вдруг блокирует или мешает...)

Автор: OtshelnikFm 12.5.2009, 17:47

Цитата
Произошла ошибка в тексте запроса! Команда не будети выполнена! Сообщите администратору!
:( всего 3 сообщения в базе и больше не идут. лог ошибок пуст. Снова работает только после перезапуска.

Все проблемы, кстати, начались когда у скриптов появилась одна общая база только разые таблицы (базу назвал PtokaX, таблицы chatlogs_mainlogs и statist_userstats (ну и таблицы ошибок chatlogs_errors и statist_errors)) - тоесть когда 2 скрипта на mysql работают в общей базе (скрипт статистики поиска и лог чата).

Автор: Vizunchik 20.5.2009, 20:58

Народ хотелось бы такой скрпт на VerliHub version 0.9.8c. Сможите переделать под VerliHub плизз если вам конешьно не трудно

Автор: Wariner 20.5.2009, 21:04

чтоб конкретно я смог переделать мне нужно устанавливать верлик на винду, чего делать мне не очень хочется.... а без этого вряд ли получится что то дельное....

Автор: Vizunchik 20.5.2009, 21:10

Очень жаль конешно. Но у меня при установки этого скрипта на птоку 0,4,1,1, выдаёт ошибку

Код
[00:09] Синтаксис ... ВИНДЕ\Сервак хаба\0.4.1.1\scripts\ChatLogsMySQL.lua:57: LuaSQL: Error connecting to database. MySQL: Can't connect to MySQL server on 'localhost' (10061)

Автор: Wariner 20.5.2009, 21:22

хм а у тебя MySQL сервер на каком адресе(порте)?

Автор: Setuper 20.5.2009, 21:22

такая ошибка говорит, что сервер не установлен или не запущен

Автор: Vizunchik 20.5.2009, 21:36

вот ошибочка ещё одна
[01:04] Синтаксис ... ВИНДЕ\Сервак хаба\0.4.1.1\scripts\ChatLogsMySQL.lua:57: LuaSQL: Error connecting to database. MySQL: Unknown database 'ptokascripts'

Автор: mariner 20.5.2009, 22:00

эмм, а вэбсервер есть? ваще ты что-нитть в чат напиши и переподключись. Ага =)

Автор: Vizunchik 20.5.2009, 22:22

веб есть денвер запустил его запускаю хаб и хочу запустить скрипт и он выдаёт эту ошибку

Автор: mariner 20.5.2009, 22:24

создай базу ручками, а. Я писал в подфоруме про скрипты

Автор: Setuper 20.5.2009, 22:28

денвер для лузеров.
Лучше всё поотдельности поставить.

Автор: OtshelnikFm 21.5.2009, 14:58

Эх раз, еще раз... http://mydc.ru/topic1828.html

Автор: fixx 28.5.2009, 11:28

Вобщем вот. Для тех, кто хотел бы вывести N количество (в скрипте стоит 10 (LIMIT 0,10 )) последних сообщений чата, на страницу.
Подключить скрипт (кто незнает) можно, добавив в нужное место, например в сайдбар, контент или пост код:

Код
<?php require "dbchat.php"; ?>

Можно использовать, как самостоятеоьную страницу, только добавить стиль надо, так как скрипт только генерирует таблицу с полями Время, Ник, Сообщение.
Скрипт php полностью прокомментирован, потому разобраться можно даже новичку, каковым я сам и являюсь big_smile.gif
Написан с помощью фака по php www.php.su - я и тут, и там учусь.
Незабываем подставить Свои значения переменных:
Код
$host = "localhost";
$user = "chat";
$password = "******";
$db = "chat";

ЗЫ Знатоков PHP прошу сильно меня не пинать, я только учусь, а скрипт рабочий и полезный. big_smile.gif

 dbchat.rar ( 604 байт ) : 21

Автор: mariner 11.6.2009, 21:29

реквестую возможность настройки виды вывода информации в таблице истории чата. По тэгам. Чтобы в шапке скрипта было описание тэгов и строка , для ввода. ВВод через пробел
Тэги:
%NUM - номер
%TIME - время, когда сказано
%IP - айпи
%NICK - ник
%TEXT - сама фраза

ну и еще что можно выдумать

Автор: Дениска 12.6.2009, 14:10

Цитата(mariner @ 11.6.2009, 22:29) *
реквестую возможность настройки виды вывода информации в таблице истории чата. По тэгам. Чтобы в шапке скрипта было описание тэгов и строка , для ввода. ВВод через пробел
Тэги:
%NUM - номер
%TIME - время, когда сказано
%IP - айпи
%NICK - ник
%TEXT - сама фраза

ну и еще что можно выдумать

тоесть нужна php-ная страница?

Автор: mariner 12.6.2009, 14:16

Цитата(Дениска @ 12.6.2009, 15:10) *
тоесть нужна php-ная страница?


неа, это я предлагаю идею тэгов для вывод строки истории.
Типо: %NUM % TIME %NICK %TEXT
Это сочетание выведет в таблицу строки в формате
Цитата
3124 18:05:43 <mariner> всем привет

А если будет так: %NUM % TIME %NICK %IP %TEXT
То строка станет такой
Цитата
3124 18:05:43 79.120.84.207 <mariner> всем привет

Автор: Дениска 12.6.2009, 14:26

может кто нибудь скинут sql-ку?
ибо нет возможности на птоке затестить

Автор: Wariner 12.6.2009, 15:02

скинуть чего?

Автор: mariner 12.6.2009, 15:34

базу скинуть

Автор: Wariner 25.6.2009, 23:29

Итак вышла новая версия. вроде бы потестил всё должно работать! особенно проверьте корректировку времени!

Автор: Wariner 26.6.2009, 16:16

посмотрел комент Сетапера в другой теме и перезалил ещё раз!

Автор: Setuper 26.6.2009, 16:28

Исправил, но не везде))

Автор: STRELOK 26.6.2009, 17:04

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

Автор: Wariner 28.6.2009, 13:24

Исправил работу сортировки по ип и нику! Доправил работу с курсорами ещё в двух местах!

Автор: STRELOK 28.6.2009, 13:31

Цитата
[16:29:06] <STRELOK> !mainlogs
[16:29:25] <STRELOK> !nickmainlogs STRELOK
[16:29:42] <STRELOK> !ipmainlogs 10.2.136.203


Код
:274: invalid capture index

Автор: Wariner 28.6.2009, 14:33

на тестовой БД работал. на основном хабе работал частично. вылечил сносом БД. Если при наборе сообщений повторится будем копать)))

Автор: STRELOK 28.6.2009, 14:45

Не, базу сносить не буду)))
Просто уберу менюшку, по идеи, этот скрипт у меня логирует чат только для веб интерфейса, на хабе им не пользуюсь

Автор: Uncle_Dif 2.7.2009, 10:45

Скачал- незапускается. Пишет:'D:\Аврора-хаб\Uncle_Dif-Hub\InstaHub-0.23\InstaHub\scripts\libs\luasql.dll'
Что делать?

Автор: mariner 2.7.2009, 11:09

Ну наверное поставить mysql и плагин для хаба

Автор: Uncle_Dif 2.7.2009, 11:31

Цитата(mariner @ 2.7.2009, 11:09) *
Ну наверное поставить mysql и плагин для хаба


Поставил mysql и теперь пишет:[14:24] Синтаксис ...InstaHub-0.23\InstaHub\scripts\ЛогированиеГлЧата.lua:67: LuaSQL: Error connecting to database. MySQL: Can't connect to MySQL server on 'localhost' (10061)
Это я перевел[14:24] Синтаксис... InstaHub-0.23\InstaHub\scripts\ЛогированиеГлЧата.lua:67: LuaSQL: Ошибка, соединяющаяся с базой данных. MySQL: Не может соединиться с MySQL сервером на 'localhost' (10061)

Отсюда вопросы:
1.Подробнее про плагин, пжлст..
2.Объясни про "сервер на 'localhost', плизз

Автор: mariner 2.7.2009, 11:59

неужто тебя на гугле забанили.
ну ладно, расскажу - сервер на локалхосте - это ты должен установить MySQL сервер себе на машинку. Без него работать не будет. Ну а потом почитать в шапке этого раздела, как создавать базу.

Автор: eXrnd 2.7.2009, 12:32

Благодарю. Хороший скрипт. Поставил себе. Никто не хочет сделать генерацию лога в html? С разделениями по дате/месяцу big_smile.gif

Автор: Wariner 2.7.2009, 13:11

а для чего сие нужно?
в теме уже есть пара написанных скриптов берущих из базы логи и выводящих на сайт!

Автор: Uncle_Dif 2.7.2009, 13:22

Цитата(mariner @ 2.7.2009, 12:59) *
неужто тебя на гугле забанили.
ну ладно, расскажу - сервер на локалхосте - это ты должен установить MySQL сервер себе на машинку. Без него работать не будет. Ну а потом почитать в шапке этого раздела, как создавать базу.


1.Этот самый сервер, MySQL сервер, имхо здесь скачать? http://mydc.ru/r/?http://www.softportal.com/get-65-mysql.html ;-)

Вот установил сервер, и снова не запускается, пишет: [17:53] Синтаксис... InstaHub-0.23\InstaHub\scripts\ЛогированиеГлЧата.lua:67: LuaSQL: Ошибка, соединяющаяся с базой данных. MySQL: Запрещенный доступ для пользовательского 'корня' 'localhost' (использование пароля: ДА)

Где-то надо ввести пароль? Где?

Автор: Wariner 2.7.2009, 16:28

открой скрипт там всё написано!

Автор: Uncle_Dif 2.7.2009, 16:34

Цитата(Wariner @ 2.7.2009, 17:28) *
открой скрипт там всё написано!


Я эту 67 строку тока по диогонали не считал, нет там её... а-то б yes на no иправил бы...
здесь спрашиваю потому, что уперся и понять не могу

Автор: Serx 2.7.2009, 17:08

а пароли то вводил в где-то в 30х строчках?

Автор: Uncle_Dif 2.7.2009, 17:34

Цитата(Serx @ 2.7.2009, 17:08) *
а пароли то вводил в где-то в 30х строчках?


Есть такая строка - local sPasswordDB = "пароль"

Что сделать? стереть пароль ?

Автор: exxxx 2.7.2009, 18:12

Цитата(PomanoB @ 30.4.2009, 22:48) *
Вот, показывается ип, и поле для выбора количества собщений на страницу
 chatlogs.zip ( 38.26 килобайт ) : 51

Не работает фильтр с русскими никами :( И для чего в конфиге строчки

Цитата
$ev_user = 'admin';
$ev_passwd = 'pck64grt';

Автор: mariner 2.7.2009, 18:25

Цитата(Uncle_Dif @ 2.7.2009, 18:34) *
Есть такая строка - local sPasswordDB = "пароль"

Что сделать? стереть пароль ?


Еще раз скажу - читай шапку раздела!
http://mydc.ru/topic1828.html

Автор: Uncle_Dif 2.7.2009, 19:41

Спасибо за минуту твоего внимания.

Установил и запустил (суток не прошло)) я этот скрипт. Тьфу-тьфу...
Вопрос: лог выдается только в окно гл.чата? в окно бота нельзя перевести?

Автор: Wariner 2.7.2009, 20:09

можно и в приват...
для этого в нужном месте надо заменить

Код
Core.SendToUser

на
Код
Core.SendPmToUser


синтаксис смотрим в скрипт-интерфейсе

Автор: Uncle_Dif 2.7.2009, 22:50

Цитата(Wariner @ 2.7.2009, 20:09) *
можно и в приват...
для этого в нужном месте надо заменить
Код
Core.SendToUser

на
Код
Core.SendPmToUser


синтаксис смотрим в скрипт-интерфейсе


Во всех местах исправил, как сказано.
Ставлю галку на скрипте- пишет: Нет синтаксических ошибок в файле скрипта ЛогированиеГлЧата.lua
Далее пишу в чате, чтоб создать лог и тут же проверяю, что выдаст скрипт. В чате появляется - !mainlogs, а галка со скрипта пропадает. Пишет: [01:47] Синтаксис ...InstaHub-0.23\InstaHub\scripts\ЛогированиеГлЧата.lua:144: bad argument count to 'SendPmToUser' (3 expected, got 2)
Вот тут, перевожу:[01:47] Синтаксис... InstaHub-0.23\InstaHub\scripts\ЛогированиеГлЧата.lua:144: плохой счет(граф) параметра к 'SendPmToUser' (3 ожидаемый, добрался 2)
..... и тупо не понимаю, что делать.
Помоги плизз.

Автор: Wariner 2.7.2009, 23:34

Цитата(Wariner @ 2.7.2009, 21:09) *
синтаксис смотрим в скрипт-интерфейсе

Автор: Uncle_Dif 2.7.2009, 23:51

Спасибо, что уделил минуту.

Автор: Serx 4.7.2009, 18:15

не логируются строчки начинающиеся с /

и команды просмотра общего лога тож в чат почему-то начали проскакивать... и не выполняться, хотя вчера работали нормально.

update: сейчас проверил... не только с / а ещё и с + * ! вначале... т.е. похоже он их считает за команды :(

Автор: Wariner 4.7.2009, 18:16

да замечено... поправлю!

Автор: Serx 4.7.2009, 19:41

исправил у себя упрощением строчки:

Код
if ((not sCmd or ((iMe == 1) and (sCmd == "!me" or sCmd == "+me" or sCmd == "/me"))) or (sCmd == "[!+/]me")) and (not (sMsg:match("is kicking"))) and (tExNick[tUser.sNick] ~= 1) then

на
Код
if (not (sMsg:match("is kicking"))) and (tExNick[tUser.sNick] ~= 1) then


но команда !mainlogs не срабатывает и идет в чат (хотя и не логируется)

Автор: Wariner 5.7.2009, 8:10

странно что он вообще запустился... ищи лишнюю скобку ;)

Автор: Setuper 5.7.2009, 12:59

Ошибка так и не исправлена))

строка sMsg = sMsg:gsub(i, v) функции GsubText

Код
sMsg = sMsg:gsub(i, "%%s"):format(v)

Автор: mariner 2.8.2009, 0:45

потому, что это уже в друйго раздел. предупреждение!

Автор: KraSav4EK 14.8.2009, 19:20

CODE
local TypeInMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения (при входе)
local TypeTodayMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог за сегодня)
local TypeDataMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог за дату)
local TypePeriodMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог за период)
local TypeTodayMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за сегодня)
local TypeDataMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за дату)
local TypePeriodMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за период)
local TypeTodayMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за сегодня)
local TypeDataMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за дату)
local TypePeriodMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg" -- Настройка вида сообщения ( лог ника за период)


народ если у ково нормально скрипт ровно всё выводит в чат дайте эти строки плиз 2 часа сидел ставил \t не чево лудше не стало кинте строки плиз
а всё сам разобрался

Автор: KraSav4EK 15.8.2009, 11:30

Цитата(THE STRELOK @ 24.4.2009, 18:57) *
Со слов автора скрипта(st.FILA):


Какие возможности скрипта:

Войдя на страницу, появится 3 вида поиска:
Показать последние N фраз чата
Показать сообщения нужного вам ника
Показать лог за нужное вам число


а куда эти файлы кидать я не пойму

Автор: Serx 29.8.2009, 11:18

в базу не записываются сообщения заканчивающиеся на \
и этот символ иногда записывается если стоит в середине строчки, а иногда нет... отчего это происходит?

Автор: STRELOK 29.8.2009, 11:35

Цитата(KraSav4EK @ 15.8.2009, 12:30) *
а куда эти файлы кидать я не пойму

На свой веб сервер

Автор: Setuper 29.8.2009, 11:43

Символ \ нужно экранировать так: \\

Также этот символ используется для переноса строки:

Код
"какая-то строка \
что-то после переноса"

Автор: Cjay 7.9.2009, 18:00

блин да здравствуют русские символы...значит создаю я БД. И если создаю с кодировкой utf-8, то русских букв вообще не видно в истории...если создаю с cp1251, то все русские буквы отображаются как '?????????"
и что меня спасёт?)

Автор: Maximum 7.9.2009, 18:04

Цитата(Cjay @ 7.9.2009, 19:00) *
и что меня спасёт?)

Господь Бог.
извините за оффтоп secret_smile.gif

Автор: Setuper 7.9.2009, 18:54

http://mydc.ru/index.html?showtopic=1508&view=findpost&p=11774

Автор: fixx 7.9.2009, 18:57

Cjay

Цитата(Setuper @ 1.5.2009, 20:53) *
Потому что не прописал в настройках кодировки!

В файле my.ini
Код
[client]

default-character-set=cp1251
character-sets-dir="C:/MySQL/share/charsets/"

[mysql]

default-character-set=cp1251

[mysqld]

default-character-set=cp1251
default-collation=cp1251_general_ci
character-sets-dir="C:/MySQL/share/charsets/"
init-connect='SET NAMES cp1251'


Соответствующие пути до папки charsets свои надо прописать!

Уже в сотый раз пишу об этом. Уже надоело.

Просто измени настройки вот так.

Автор: Cjay 7.9.2009, 19:23

это сделано...один фиг с рашен проблема beat_brick.gif

Автор: fixx 8.9.2009, 9:23

Сделано.
А как сделано? Добавлены эти строчки?
Нужно закомментировать строчки, которые там по дефолту.

Автор: Cjay 12.9.2009, 20:43

поколдовал тут чуть-чуть...в общем теперь вот такая ошибка сам lua не менял, кроме пароля, логина и т.п. [00:41] Синтаксис E:\....\scripts\ChatLogsMySQL.lua:291: attempt to index local 'cur' (a nil value)
fixx, добавлены, закоментированы...создаю базу в cp1251 тогда вместо русского вопросы...

P.S. кстати дайте плиз скрипт полностью...сам луа то вижу в топике, а где все остальное к этой версии скрипта взять?...

Автор: Setuper 12.9.2009, 20:59

http://mydc.ru/topic1851.html

Автор: Cjay 12.9.2009, 21:05

Setuper, я имел ввиду что весь скрипт же не только в lua файле заключается, запостеным на первой странице?
вроде бы должен быть архивчик еще...так где его взять? какой из всех архивов которые кидали в теме мне нужен?

Автор: Alexey 12.9.2009, 23:39

Только. Все.

Автор: Cjay 17.9.2009, 15:10

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

Автор: Setuper 17.9.2009, 16:17

Нет. Веб страничку нужно делать самому)))
Скрипт только заносит лог в базу данных.

Автор: Cjay 18.9.2009, 18:46

Setuper, так бы сразу и сказали =) спс, понятно

Автор: 333333 19.9.2009, 21:53

Поработал несколько дней и выл это :

CatLogsMSQL.lua:276 invalid capture index

Автор: Setuper 19.9.2009, 22:16

Исправление данной ошибки описано тут: http://mydc.ru/index.html?showtopic=1823&view=findpost&p=17961

Автор: 333333 22.9.2009, 21:22

Теперь так :

CatLogsMSQL.lua:276 bad argument #2 to 'format' (string expected, got no value )

Автор: Setuper 22.9.2009, 22:44

Раз такая ошибка, значит ты не так её исправил. Если написать то, написано по выше указанной ссылке, то такой ошибки в принципе не может получиться)))

Автор: evg 10.11.2009, 16:31

Пытаюсь сделать "на лету" перевод в utf-8, используя функцию http://mydc.ru/ipb.html?s=&showtopic=334&view=findpost&p=2276 , база в UTF-8

вставил AnsiToUtf8(tUser.sNick) и AnsiToUtf8(sMsg)) :

Код
    local _,_,sMsg = sData:find("%b<>%s+(.*)")
    if ((not sCmd or ((iMe == 1) and (sCmd == "!me" or sCmd == "+me" or sCmd == "/me"))) or (sCmd == "[!+/]me")) and (not (sMsg:match("is kicking"))) and (tExNick[tUser.sNick] ~= 1) then
        con:execute(("INSERT INTO `%sMainLogs` (`Date`, `Time`,`Nick`,`IP`,`Msg`) VALUES ('%s','%s','%s','%s','%s')"):dbformat(sPrefixTable, os.date("%Y-%m-%d"),os.date("%H:%M:%S"), AnsiToUtf8(tUser.sNick), tUser.sIP, AnsiToUtf8(sMsg)))
    end

получаю:

подскажите, пожалуйста, где грабли?

Автор: EW ХАБЫЧ 12.12.2009, 21:56

А можно к нему сделать к примеру такое меню?:

Меню хаба\\История чата\\Показывать при входе\\Да
Меню хаба\\История чата\\Показывать при входе\\Нет
Меню хаба\\История чата\\Посмотреть лог за сегодня

Автор: Wariner 12.12.2009, 22:01

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

Автор: EW ХАБЫЧ 12.12.2009, 23:54

да это только для меню админа "за сёдня", но думаю смогу сам переделать чтобы было и юзерам. а так зарание спасибо big_smile.gif

Автор: alcorp 15.12.2009, 9:31

Код
1.   2009-12-15 09:25:26   :290: attempt to index local 'cur' (a nil value)


Код
chatlogsmysql.lua:297: invalid capture index


Интересная такая финалка получается... big_smile.gif

Код
Команда не будетИ выполнена!


Код
Введите коррИктировку (пропущена запятая) например (пропущена запятая)


Не забывайте, что русский язык тоже имеет синтаксис. big_smile.gif

Вывод последних фраз происходит снизу вверх, а не сверху вниз.
Ребят, Вы что, китайцы? big_smile.gif

Код
sMsg = sMsg:gsub(i, "%%s"):format(v)


invalid option '%D' to 'format'

И никто ничего, интересно как у других работает, и автор наверно этим скриптом не пользуется вообще.

Автор: Хабыч 16.12.2009, 17:42

Думаю хорошо бы было если в скрипте который выводит лог на сайт все ссылки отображались по человечески big_smile.gif
Сейчас они как обычный текст.

Автор: fixx 26.12.2009, 21:56

Хабыч, если разрешить теги, то я смогу через чат хаба написать тебе очень большими буквами и неестевственным цветом на странице с чатлогом.
Очень хорошо, что это делать нельзя. Проверки моих юзеров на это я вижу чуть ли не ежедневно. Сидит молодежь, узнала азы хтмл и пробует силы. ;)
Но даже это ничто, по сравнению с тем, что можно разместить через чат на ТВОЕЙ странице, если страница будет реагировать на теги...
Так что со ссылками пока никак. Думается, что магнеты можно было бы разрешить, а вот хттп... здесь бы я не рискнул.

Автор: Хабыч 18.1.2010, 3:02

Wariner Подскажи пожалуйста что и как надо изменить чтоби при заходе на хаб было не Time Nick Msg а по-русски Время, Ник Сообщение. baffle.gif

Цитата
а вот по поводу показывать не показывать
Забыли big_smile.gif

Автор: Wariner 18.1.2010, 18:19

Цитата(Хабыч @ 18.1.2010, 3:02) *
Wariner Подскажи пожалуйста что и как надо изменить чтоби при заходе на хаб было не Time Nick Msg а по-русски Время, Ник Сообщение. baffle.gif

Код
local TypeInMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"                -- Настройка вида сообщения (при входе)
local TypeTodayMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог за сегодня)
local TypeDataMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"                -- Настройка вида сообщения ( лог за дату)
local TypePeriodMsg = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог за период)
local TypeTodayMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"        -- Настройка вида сообщения ( лог ника за сегодня)
local TypeDataMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог ника за дату)
local TypePeriodMsgNick = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"        -- Настройка вида сообщения ( лог ника за период)
local TypeTodayMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог ника за сегодня)
local TypeDataMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог ника за дату)
local TypePeriodMsgIP = "id \t Time \t Date \t Nick(IP) \t\t\t Msg"            -- Настройка вида сообщения ( лог ника за период)


Цитата(alcorp @ 15.12.2009, 9:31) *
Не забывайте, что русский язык тоже имеет синтаксис. big_smile.gif

Вывод последних фраз происходит снизу вверх, а не сверху вниз.
Ребят, Вы что, китайцы? big_smile.gif

И никто ничего, интересно как у других работает, и автор наверно этим скриптом не пользуется вообще.

Русский язык думаю вы и сами в состоянии поправить!

Вывод сделан в той последовательности в котором сообщения шли в чат и когда ты заходишь первое увиденное тобой сообщение и последнее сообщения лога были как раз по по рядку!

Автор не юзает этот скрипт, потому что у автора нет хаба!

PS: когда комментируете достаточно ёмкие по написанию скрипты думайте головой что пишите, а то такое ощущение что вы все прям такое же напишите с закрытыми глазами!!! anger.gif

Автор: Хабыч 18.1.2010, 18:36

Это я пробовал. Только получилось вместо показа времени например слово "время"

точнее это...

........................................................................................................................
Время Date Nick Msg
........................................................................................................................

Время 18.01.2010 Saymon тест
........................................................................................................................
..

Код
local TypeInMsg = "Время \t Date \t Nick \t\t\t Msg"

Автор: Wariner 18.1.2010, 18:42

Хм да извиняюсь. достаточно давно уже не открывал его.

Странно по идеи должен русскими писать.... А во всех остальных режимах как?

Автор: Хабыч 18.1.2010, 18:49

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

Автор: sergius 21.1.2010, 17:42

Изменить последовательность отображения сообщений как?

Автор: Nickolya 21.1.2010, 20:19

Что-то мне говорит что надо приписать в строке сортировку, вот в этой:

Код
    local cur = con:execute(("SELECT * FROM `%sMainLogs` WHERE (%s)"):format(sPrefixTable, sWhere))

и сделать ее вот такой:
Код
    local cur = con:execute(("SELECT * FROM `%sMainLogs` WHERE (%s) ORDER BY `id` DESC"):format(sPrefixTable, sWhere))

Информация не проверенная, так что не ручаюсь...

Автор: sergius 22.1.2010, 0:32

Афтор, прошу комментария victory.gif

Автор: Nickolya 22.1.2010, 0:45

По поводу? Работает эта замена или что, ты расскажи что тебе надо, логично и просто, пожалуйста.

Автор: sergius 22.1.2010, 1:35

Сообщения выводить сверху вних, от старого к свежему

нужно на уменьшение id

Автор: Wariner 22.1.2010, 7:31

Тебе ответили несколькими постами выше! чё не понятно?!

PS: история чата должна выводится именно так, чтобы зашедший на хаб человек пролистал её как чат(как будто он был на хабе) и первое сообщение при его присутствии было тесно связанно по смыслу с последним сообщением истории!

Автор: sergius 22.1.2010, 13:56

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

Код
[13:50:47] <ChatLogBot> Последние 9 главного чата:                                                             
========================================================================
[Time] <Nick> Msg
========================================================================
[13:50:32] <[krasnodar]SERGIUS> 9
[13:50:32] <[krasnodar]SERGIUS> 8
[13:50:31] <[krasnodar]SERGIUS> 7
[13:50:31] <[krasnodar]SERGIUS> 6
[13:50:30] <[krasnodar]SERGIUS> 5
[13:50:29] <[krasnodar]SERGIUS> 4
[13:50:29] <[krasnodar]SERGIUS> 3
[13:50:28] <[krasnodar]SERGIUS> 2
[13:50:27] <[krasnodar]SERGIUS> 1


А я хочу что бы выводил так:

Код
[13:50:47] <ChatLogBot> Последние 9 главного чата:                                                             
========================================================================
[Time] <Nick> Msg
========================================================================
[13:50:27] <[krasnodar]SERGIUS> 1
[13:50:28] <[krasnodar]SERGIUS> 2
[13:50:29] <[krasnodar]SERGIUS> 3
[13:50:29] <[krasnodar]SERGIUS> 4
[13:50:30] <[krasnodar]SERGIUS> 5
[13:50:31] <[krasnodar]SERGIUS> 6
[13:50:31] <[krasnodar]SERGIUS> 7
[13:50:32] <[krasnodar]SERGIUS> 8
[13:50:32] <[krasnodar]SERGIUS> 9

Автор: Wariner 22.1.2010, 19:01

толи лыжи не едут то ли...
в скрипте же так и сделано! Вот рабочий скрипт с нашего хаба dchub://hub.mydc.ru

Цитата
- <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
[18:52:47] <ChatLogBot> Последние 20 сообщений главного чата:
- <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

- [22.01.2010] [16:38:49] < ».†.«   Хомячёк хрум хрум   ».†.« > В лучших традициях))) ахха, наша раша - абсолютно полное отсутствие юмора!
- [22.01.2010] [16:39:28] < ».†.«   Хомячёк хрум хрум   ».†.« > как и ожидал ничего интересного и смешного, некоторые моменты улыбнуло, но чтоб посмеяться от души моментов нет. разок глянуть можно, но ждать мега фильма не стоит. оценка 3-
- [22.01.2010] [16:39:54] < ».†.«   Хомячёк хрум хрум   ».†.« > шутки такие же как и в камеди клаб ...
- [22.01.2010] [16:40:17] < ».†.«   Хомячёк хрум хрум   ».†.« > к тому же камрип? смотреть? беее.. я досихпор аватар не посмотрел
- [22.01.2010] [16:40:39] < ».†.«   Хомячёк хрум хрум   ».†.« > завтро покажу какие тапки купил
- [22.01.2010] [17:03:38] <Saymon> HackFresse, норм фильм? или опять байда какая нибудь
- [22.01.2010] [17:04:08] <Nexx_&_All> да сто пудов байда
- [22.01.2010] [17:15:52] < ».†.«   Хомячёк хрум хрум   ».†.« > неужели ты из тех кто смотрит камрип?
- [22.01.2010] [17:20:28] < ».†.«   Хомячёк хрум хрум   ».†.« > кто хочет фундука? у мну 3кг есть ) нахрумкаться до посинения
- [22.01.2010] [18:24:53] <ParaSite> фтопку
- [22.01.2010] [18:36:18] <evg> Доброго времени суток хабберы
- [22.01.2010] [18:37:18] <evg> У грея, как и у некоторых других клиентов есть возможность использовать теги, например: [url] и [img] как их можно обойти?
- [22.01.2010] [18:37:24] <evg> что бы клиент видел именно теги )
- [22.01.2010] [18:39:17] <FallenAngel> d yfcnhjqrf[ vj;yj dhjlt jnrk.xbnm ghbvtytybt ntujd
- [22.01.2010] [18:39:20] <FallenAngel> в настройках можно вроде отключить применение тегов
- [22.01.2010] [18:42:06] <evg> FallenAngel: не, надо что бы те, у кого клиент такой видели теги, а не резултат парсера тегов
- [22.01.2010] [18:47:31] <FallenAngel> Ну, я и гворю что их отключить можно и вместо цветного текста будет видно теги
- [22.01.2010] [18:47:38] <FallenAngel> ТОк каг-я хз, давно не юзал грей
- [22.01.2010] [18:51:41] <evg> FallenAngel: угу, не заставишь ведь всех юзеров теги отключить
- [22.01.2010] [18:52:07] <evg> думал может клиентами предусмотрено что то...

- <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

обрати внимание на время!

Автор: sergius 22.1.2010, 20:40

Значит у меня MySQL неверный или Ptokax не та =)
Кстати у вас скрипт переработанный, во всяком случае внешне визуально он более симпатично выводит.
Если лыжы не едут намекните что неверно в моём MySQL или PtokaX, или всё же что то не было учтено при создании скрипта?

Скрипт постоянно виснет [09:29] Синтаксис ChatLogsMySQL.lua:276: invalid capture index

Автор: Cjay 6.4.2010, 21:39

хм где-то косячек чтоли...почему-то не залогировалось сообщение с виду вроде обычное...
там кроме букв разве что были =) - и \.
вот \ как раз на конце предложения и в середине было.. в общем я написал пару слов поставил смайл и кинул адрес сайта в чат. в итоге сообщения в логе нет

нашел причину, действительно, если в конце сообщения поставить \ то оно не логируется, как поправить это?
вывод лога чата тоже как-то криво выводится...шапка таблицы очень сдвинута...

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

Автор: Serx 7.4.2010, 9:17

Цитата(Setuper @ 29.8.2009, 14:43) *
Символ \ нужно экранировать так: \\
Также этот символ используется для переноса строки:
Код
"какая-то строка \
что-то после переноса"

Я пытался это сделать строчкой
Код
string.gsub (sMsg, "\", "\\")

но скрипт при запуске выдал ошибку:
[12:10] Синтаксис C:\Program Files\PtokaX\scripts\ChatLogs__MySQL.lua:275: ')' expected near '\'

Автор: Cjay 7.4.2010, 18:58

вот если бы он работал как перенос строк то я полагаю мы бы вместо "при\вет" получали не "привет"
а "при
вет" что-тов этом духе, а тут просто этот символ не логируется...а в конце строки если он стоит вообще что-то не понятное со всем сообщением происходит

Автор: whuru 10.4.2010, 18:57

Цитата
Синтаксис F:\Ptokax\scripts\ChatLogsMySQL.lua:276: invalid capture index


С завидной регулярностью отваливается. Куда копать?

БД в утф8 ибо в цп1251 одни вопросы.

Автор: Cjay 11.4.2010, 20:27

whuru, и у меня тоже эта ошибка с завидным постоянством вываливаться стала
бд в цп1251 =) так что там не в кодировке дело явно)
ошибка на строке:
sMsg = sMsg:gsub(i, v)

Автор: Setuper 11.4.2010, 20:38

данная ошибка обсуждалась на хабе форума (28.06.2009)

Решение проблемы:

Код
sMsg = sMsg:gsub(i, "%%s"):format(v)

Автор: whuru 11.4.2010, 21:50

Не помогло, теперь другая ошибка:

Цитата
Синтаксис F:\Ptokax\scripts\ChatLogsMySQL.lua:276: invalid option '%D' to 'format'


может еще надо где-то править?

Автор: Setuper 11.4.2010, 22:54

Код
sMsg = sMsg:gsub("%%", "%%%%"):gsub(i, "%%s"):format(v)

Автор: whuru 12.4.2010, 19:11

Спасибо, долго работал, почти сутки, и в итоге ошибка

Цитата
Синтаксис F:\Ptokax\scripts\ChatLogsMySQL.lua:276: bad argument #2 to 'format' (string expected, got no value)


и теперь отваливается каждую минуту

Автор: Setuper 12.4.2010, 20:08

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

Попробуй вот такое решение:

Код
sMsg = sMsg:gsub(i, v:gsub("%%", "%%%%"))

Автор: whuru 12.4.2010, 20:13

Так он не сохраняет в базу, вот что выводит:

Цитата
====================================================================================================
id Time Date Nick(IP) Msg
====================================================================================================
id 21:17:23 12.04.2010 Nick(IP) Msg
====================================================================================================

Автор: Setuper 12.4.2010, 20:36

Код
v = v:gsub("%%", "%%%%")
sMsg = sMsg:gsub(i, v)


или просто вот так:
Код
sMsg = sMsg:gsub(i, (v:gsub("%%", "%%%%")))

Автор: whuru 18.4.2010, 21:39

Спасибо, помогло. Несколько суток работает не падает. Может имеет смысл обновить первый пост? Или в каждом конкретном случае по-разному будет написана эта строка?

Автор: _Deagle_Factory_ 1.5.2010, 20:53

У меня выходит ошибка

Синтаксис...Артем\\Рабочий стол\\птока\\scripts\\ChatlogsMYSQL.lua67:Error connecting to database. MYSQL:Acces denied for user 'root@localhost' ( using pasword YES )

Автор: Saymon 1.5.2010, 21:00

Проверь правильно ли ввёл пароль.

Автор: Санёк 11.6.2010, 20:00

Спасибо, отличный скрипт!

Единственное, вопрос.
Как сделать отступ после последней выведенной строки. Если кто-то приходит или уходит сообщение об этом пишется без переноса в последней строке истории чата.

- [2010-06-11] [11:29:31] <Ник> Последнее сообщение в истрии чата [11:30:48] *** Ушёл: Ник

Крайне нестабильный скрипт какой-то. Пересоздал БД подчитсую, перезапустил скрипт. Теперь вроде всё ОК!

Автор: Санёк 13.6.2010, 14:44

Скрипт очень уязвим!
У меня он ломается от смайлов клиента.
Когда пользователь пишет сообщение с 1 смайлом и скрипт в последующем выводит историю только до этого сообщения без переноса следующей строки, о чём я расписывал. Новые сообщения пишутся в БД, но выводить он будет всё равно до этого сообщения со смалом. Если удалить эту мессагу с БД, то скрипт продолжает нормально функционировать дальше, выводить все сообщения.
Смайлы имееют код:
\001

Как поправить ?

Автор: Serx 15.6.2010, 19:56

Цитата(Cjay @ 7.4.2010, 0:39) *
хм где-то косячек чтоли...почему-то не залогировалось сообщение с виду вроде обычное...
там кроме букв разве что были =) - и \.
вот \ как раз на конце предложения и в середине было.. в общем я написал пару слов поставил смайл и кинул адрес сайта в чат. в итоге сообщения в логе нет

нашел причину, действительно, если в конце сообщения поставить \ то оно не логируется, как поправить это?
вывод лога чата тоже как-то криво выводится...шапка таблицы очень сдвинута...

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

Помогает замена последней функции (метода) или если точнее одной строчки по примеру в http://mydc.ru/index.html?showtopic=1508&view=findpost&p=23495 Спасибо, Setuper.

Автор: Liakmad 16.6.2010, 16:01

Всем доброго времени суток. Приучил этот скрипт работать с полностью UTF-ной базой. Строка конвертится в UTF-8 при инсерте в базу, а при выводе в хаб обратно конвертируются в cp1521 Ник и Сообщение Для этого использовались функции конвертации от http://mydc.ru/index.html?showtopic=334&view=findpost&p=2276.
Если кому пригодится - ниже привожу дифф и готовую скрипту.

Код
<         con:execute(("INSERT INTO `%sMainLogs` (`Date`, `Time`,`Nick`,`IP`,`Msg`) VALUES ('%s','%s','%s','%s','%s')"):dbformat(sPrefixTable, os.date("%Y-%m-%d"),os.date("%H:%M:%S"), tUser.sNick, tUser.sIP, sMsg))
---
>         con:execute(("INSERT INTO `%sMainLogs` (`Date`, `Time`,`Nick`,`IP`,`Msg`) VALUES ('%s','%s','%s','%s','%s')"):dbformat(sPrefixTable, os.date("%Y-%m-%d"),os.date("%H:%M:%S"), tUser.sNick, tUser.sIP, AnsiToUtf8(sMsg)))
276a279,284
>                 if i == "Nick" then
>                     sMsg = Utf8ToAnsi(sMsg)
>                 elseif i == "Msg" then
>                     sMsg = Utf8ToAnsi(sMsg)
>                 end
>
305a314
>
322a332,408
>
> local ansi_decode={
>   [128]='\208\130',[129]='\208\131',[130]='\226\128\154',[131]='\209\147',[132]='\226\128\158',[133]='\226\128\166',
>   [134]='\226\128\160',[135]='\226\128\161',[136]='\226\130\172',[137]='\226\128\176',[138]='\208\137',[139]='\226\128\185',
>   [140]='\208\138',[141]='\208\140',[142]='\208\139',[143]='\208\143',[144]='\209\146',[145]='\226\128\152',
>   [146]='\226\128\153',[147]='\226\128\156',[148]='\226\128\157',[149]='\226\128\162',[150]='\226\128\147',[151]='\226\128\148',
>   [152]='\194\152',[153]='\226\132\162',[154]='\209\153',[155]='\226\128\186',[156]='\209\154',[157]='\209\156',
>   [158]='\209\155',[159]='\209\159',[160]='\194\160',[161]='\209\142',[162]='\209\158',[163]='\208\136',
>   [164]='\194\164',[165]='\210\144',[166]='\194\166',[167]='\194\167',[168]='\208\129',[169]='\194\169',
>   [170]='\208\132',[171]='\194\171',[172]='\194\172',[173]='\194\173',[174]='\194\174',[175]='\208\135',
>   [176]='\194\176',[177]='\194\177',[178]='\208\134',[179]='\209\150',[180]='\210\145',[181]='\194\181',
>   [182]='\194\182',[183]='\194\183',[184]='\209\145',[185]='\226\132\150',[186]='\209\148',[187]='\194\187',
>   [188]='\209\152',[189]='\208\133',[190]='\209\149',[191]='\209\151'
> }
> local utf8_decode={
>   [128]={[147]='\150',[148]='\151',[152]='\145',[153]='\146',[154]='\130',[156]='\147',[157]='\148',[158]='\132',[160]='\134',[161]='\135',[162]='\149',[166]='\133',[176]='\137',[185]='\139',[186]='\155'},
>   [130]={[172]='\136'},
>   [132]={[150]='\185',[162]='\153'},
>   [194]={[152]='\152',[160]='\160',[164]='\164',[166]='\166',[167]='\167',[169]='\169',[171]='\171',[172]='\172',[173]='\173',[174]='\174',[176]='\176',[177]='\177',[181]='\181',[182]='\182',[183]='\183',[187]='\187'},
>   [208]={[129]='\168',[130]='\128',[131]='\129',[132]='\170',[133]='\189',[134]='\178',[135]='\175',[136]='\163',[137]='\138',[138]='\140',[139]='\142',[140]='\141',[143]='\143',[144]='\192',[145]='\193',[146]='\194',[147]='\195',[148]='\196',
>     [149]='\197',[150]='\198',[151]='\199',[152]='\200',[153]='\201',[154]='\202',[155]='\203',[156]='\204',[157]='\205',[158]='\206',[159]='\207',[160]='\208',[161]='\209',[162]='\210',[163]='\211',[164]='\212',[165]='\213',[166]='\214',
>     [167]='\215',[168]='\216',[169]='\217',[170]='\218',[171]='\219',[172]='\220',[173]='\221',[174]='\222',[175]='\223',[176]='\224',[177]='\225',[178]='\226',[179]='\227',[180]='\228',[181]='\229',[182]='\230',[183]='\231',[184]='\232',
>     [185]='\233',[186]='\234',[187]='\235',[188]='\236',[189]='\237',[190]='\238',[191]='\239'},
>   [209]={[128]='\240',[129]='\241',[130]='\242',[131]='\243',[132]='\244',[133]='\245',[134]='\246',[135]='\247',[136]='\248',[137]='\249',[138]='\250',[139]='\251',[140]='\252',[141]='\253',[142]='\254',[143]='\255',[144]='\161',[145]='\184',
>     [146]='\144',[147]='\131',[148]='\186',[149]='\190',[150]='\179',[151]='\191',[152]='\188',[153]='\154',[154]='\156',[155]='\158',[156]='\157',[158]='\162',[159]='\159'},[210]={[144]='\165',[145]='\180'}
> }
>
> local nmdc = {
>   [36] = '$',
>   [124] = '|'
> }
>
> function AnsiToUtf8(s)
>   local r, b = ''
>   for i = 1, s and s:len() or 0 do
>     b = s:byte(i)
>     if b < 128 then
>       r = r..string.char(b)
>     else
>       if b > 239 then
>         r = r..'\209'..string.char(b - 112)
>       elseif b > 191 then
>         r = r..'\208'..string.char(b - 48)
>       elseif ansi_decode[b] then
>         r = r..ansi_decode[b]
>       else
>         r = r..'_'
>       end
>     end
>   end
>   return r
> end
>
> function Utf8ToAnsi(s)
>   local a, j, r, b = 0, 0, ''
>   for i = 1, s and s:len() or 0 do
>     b = s:byte(i)
>     if b < 128 then
>       if nmdc[b] then
>         r = r..nmdc[b]
>       else
>         r = r..string.char(b)
>       end
>     elseif a == 2 then
>       a, j = a - 1, b
>     elseif a == 1 then
>       a, r = a - 1, r..utf8_decode[j][b]
>     elseif b == 226 then
>       a = 2
>     elseif b == 194 or b == 208 or b == 209 or b == 210 then
>       j, a = b, 1
>     else
>       r = r..'_'
>     end
>   end
>   return r
> end[/font]


 ChatLogsMySQL.v1.0utf8.lua ( 20.08 килобайт ) : 15
 

Автор: Dimon21 16.8.2010, 18:20

Заметил ошибку скрипта.При введении магнетки скрипт накрывается.В базе появляется ошибка.Лечится с очистки в базе.Прошу автора перебрать скрипт. secret_smile.gif

СПС.

Автор: Dimon21 23.8.2010, 10:25

Добрый день всем кто посещает этот форум.У меня возник вопрос.Что можно зделать в этом скрипте,чтоб не проходила реклама,хотя антиреклама стоит.Скрипт злостно записывает всё.

still_dreaming.gif

Автор: Nickolya 23.8.2010, 12:01

Поставить скрипт ниже антирекламы...

Автор: Naum_Off 21.11.2010, 12:02

Доброго времени суток. Подскажите как по аккуратнее почистить бд. Скажем удалить последние 10к сообщений.

Автор: Saymon 21.11.2010, 13:02

PhpMyAdmin в помощь

Автор: Nickolya 22.11.2010, 17:04

Saymon, жестко ты. Все же просто:

Код
DELETE FROM `имя_таблицы` ORDER BY `id` DESC LIMIT 10000

Автор: Kingston 21.12.2010, 8:14

Сообщения перевалили за 10к. Через меню перестало работать удаление сообщений. Ошибок скрипта нет, при неверном значении ошибок нет и нет сообщения. Незнаю куда копать

Автор: Nickolya 22.12.2010, 1:08

Мы перешли на переделанный скрипт Алекса, чего и вам советую: http://mydc.ru/topic3682.html, ибо этот уже не поддерживается. В базе нашего хаба уже приближается к 300000 записей и всё работает на ура big_smile.gif

Автор: Kingston 23.12.2010, 9:05

Блин... я прогнался... beat_plaster.gif
У меня стоит тот скрипт, ChatHistorySQL.. Извиняйте