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

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

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

Автор: Wariner 29.5.2009, 21:29

Название скрипта: BashMySQL
Версия скрипта: 1.0 RC1
Версия API: API2
Автор: Wariner
Примечания: Скрипт основывается на скрипте Bash.Org.Ru Script автора Nickolya
Возможности:
v 1.0 RC1
- Возможность смотреть старые цитаты
- Всем знакомый баш орг, но теперь хранящий все цитаты в БД

Для начала работы со скриптом надо так же установить библиотеку сокетов http://mydc.ru/ipb.html?act=attach&type=post&id=74

 BashMySQL.lua ( 12.42 килобайт ) : 276
 

Автор: mariner 30.5.2009, 6:33

спасибо!

Автор: Strannik 31.5.2009, 12:03

Выводит такие ошибки нет файла

Синтаксис C:\PtokaX\scripts\BashMySQL.lua:45: module 'luasql.mysql' not found:
no field package.preload['luasql.mysql']
no file 'C:\PtokaX\luasql\mysql.lua'
no file 'C:\PtokaX\libs\luasql\mysql.lua'
no file 'C:\PtokaX\scripts\libs\luasql\mysql.lua'

Автор: Setuper 31.5.2009, 12:07

Все скрипты данного раздела работают с базой данных.
http://mydc.ru/topic1851.html

Автор: Strannik 31.5.2009, 12:29

теперь выводит такое
Синтаксис error loading module 'luasql.mysql' from file 'C:\PtokaX\libs\luasql\mysql.dll':
Не найден указанный модуль.
файл присутствует

Автор: mariner 31.5.2009, 12:34

закрой хаб и открой заново. big_smile.gif то бишь перезапусти. если всеравно не будет пахать - попробуй перекачать архив и бинарник птоки

Автор: Setuper 31.5.2009, 12:39

У некоторых библиотека не работает в папке libs, в этом случае архив нужно распаковать в папку с экзешником ptokax.exe

Автор: Strannik 31.5.2009, 12:49

Цитата(Setuper @ 31.5.2009, 13:39) *
У некоторых библиотека не работает в папке libs, в этом случае архив нужно распаковать в папку с экзешником ptokax.exe


спс заработало

Автор: mariner 31.5.2009, 21:09

Код
31.05.2009 15:45:23 - /etc/ptokax/scripts/bash.lua:116: attempt to concatenate a boolean value
31.05.2009 19:53:53 - /etc/ptokax/scripts/bash.lua:116: attempt to concatenate a boolean value
31.05.2009 19:54:04 - /etc/ptokax/scripts/bash.lua:116: attempt to concatenate a nil value
31.05.2009 20:05:29 - /etc/ptokax/scripts/bash.lua:116: attempt to concatenate a boolean value
31.05.2009 22:02:28 - /etc/ptokax/scripts/bash.lua:116: attempt to concatenate a boolean value


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

Автор: Otshelnik-Fm 31.5.2009, 21:54

Фантастика - хоть у когото отвалилось тоже (я не злорадствую - просто писал уже и в чат хистори и в других скриптах на мускуле - что перестает логировать) - значит я не одинок. значит будет толк

Автор: Wariner 31.5.2009, 21:57

Хм в скрипте что нить менял? у меня 116 строка тупо end still_dreaming.gif

PS: жаль у меня хаб не круглосуточный и проверить сие я не могу ((( попробую в следующих версиях делать рестарт конекта.

Автор: mariner 31.5.2009, 22:15

ну хотя бы раз в 2 часа. посмотрим что как. хотя - лучше раз в час... ксттати, этим (отвалом бд) страдает не тока птока. есть другие проги, которые от этого мучаются (именно на debian) В RedHat все норм бегает big_smile.gif Мистика, не правда ли?

Автор: STRELOK 13.6.2009, 12:36

1 Вопрос: Старые цитаты (от 13 мая) отображаются в новых, как поправить?
2 Вопрос: как сделать, чтобы цитаты показывались не по одной, а по несколько, скажем параметр iCount = "30" - тогда и цитат в ЛС будет выводится 30.
3 Вопрос: как сделать, чтобы база цитат сама очищалась через определённое кол-во дней, скажем iDays = "60" - очищение базы происходит раз в 60 дней

Автор: Wariner 13.6.2009, 13:13

1) не знаю, посмотрим.
2) странная идея.... если выдаст в чат 30 цитат это ж ппц
3) а зачем очищать БД?

Автор: STRELOK 13.6.2009, 16:25

2) Сами цитаты по таймеру в чат не выводятся(на моём хабе), только вводом команды в ЛС юзеру
3) Ну это скорей нужно будет тогда, когда будет установлен параметр iCount, который скажем будет выводить посл. 30 цитат, зачем тогда нужно будет хранить те, которые уже не выводятся.

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

в скрипте предусмотрен выбор как посылать сообщения + специально переписан под БД чтоб хранить все цитаты. эти исправления не нужны ИМХО

Автор: STRELOK 21.6.2009, 19:51

Цитата(Wariner @ 13.6.2009, 13:13) *
1) не знаю, посмотрим.

Так ошибку и не нашёл?

Автор: jumpEXZ 2.1.2010, 12:41

Все отлично, Работает после некоторых манипуляций.

Автор: Wariner 2.1.2010, 13:03

библиотеки установил?

Автор: jumpEXZ 3.1.2010, 6:20

Все отлично, Работает, как подобает, после некоторых манипуляций.

Автор: Wariner 3.1.2010, 10:41

Цитата(jumpEXZ @ 3.1.2010, 6:20) *
Да , я установил в папку libs mysql ! только не установил сервер, его обязательно устанавливать ??

конечно же надо!
Цитата(jumpEXZ @ 3.1.2010, 6:20) *
И ещё , у меня к Вам замечание, вы переименовываете папки со скриптами, и приходится переписывать в скрипте путь к базе данных

Чё за бред?! причём тут папка и БД?! Да и вообще у вас могут быть токо предложения, но не как не замечания ;-)


Цитата(jumpEXZ @ 3.1.2010, 6:20) *
да! но теперь новая ошибка при попытке включения скрипта
Синтаксис ...л\ярлыки от игр\PtokaX 0.4.1.1\scripts\BashMySQL.lua:47: LuaSQL: Error connecting to database. MySQL: Access denied for user 'root'@'localhost' (using password: YES)


Настроить скрипт надо правильно! в верхней части скрипта есть настройки конекта логин и пароль!

Автор: Cjay 6.4.2010, 15:48

спасибо) пока вроде работает всё, разве что поправил скрипт добавил в sTypeMsg All - т.е. настройку при которой цитату будет выводить в чат не для юзера, её запросившего, а всем. ну и в менюшке добавил команд для показа как одному юзеру, так и всем.. т.е. что бы не включать All, а просто при Main можно было на выбор вывести цитату...

Автор: Cjay 9.4.2010, 17:53

хм такое ощущение что на каждый второй день начинает вываливаться ошибка attempt to concatenate a boolean value
спасает перезапуск скрипта и обновление базы еще раз.
кстати при обновлении тоже рисует какие-то очень странные числа, типа Данные приняты в размере 51889 Кб за 2.0160000000033 секунд.
50 метров?! еще и за две секунды...Что-то тут явно не так)

Автор: Nickolya 10.4.2010, 9:53

Cjay, размер скорее всего в байтах, а переподключение к базе делается так: в конец функции OnStartup дописываешь

Код
TmrMan.AddTimer(3600000, "ReConnect")

А в самый конец скрипта вот такую функцию:
Код
function ReConnect()
    con:close()
    con = assert (env:connect(sNameDB, sUserDB, sPasswordDB, sAdressDB, sPortDB))
end

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

Nickolya, спс поправил..посмотрим, что будет
только вот почему-то цитаты в старые он не заносит, до сих пор старых цитат нет, хотя в скрипте выставлено 2 дня и скрипт уже неделю работает..

Автор: whuru 15.5.2010, 11:53

Периодически отваливается с ошибкой:

Цитата
[12:50] Синтаксис F:\Ptokax\scripts\BashMySQL.lua:113: attempt to concatenate a boolean value


Пока не понял при каких обстоятельствах.

Автор: Nickolya 16.5.2010, 18:39

Отваливается соединение с БД, сделай как я писал чуть выше, и, если надо, сделай меньше интервал переподключения.

Автор: Parad0x 22.11.2010, 22:20

Какая-то странность происходит со скриптом. Работает, поправил код чтоб не отваливался конект к базе. Таблицы в базе создались. Когда настает время обновления пишет что все удачно обновил все хорошо и тд и тп. Но когда пытаюсь запросить цитату, то:
<PtokaX>Старых цитат в базе нет!
<PtokaX>Новых цитат в базе нет!
Привелегии пользователя MySQL перепроверил ничег оне заметил :(
Никаких ошибок в логах и вообще где-либо не происходит.

Автор: Parad0x 1.3.2011, 20:54

сервер Centos 5.5.
При включении подачи цитат "TimerPlusMenu". Цитаты перестают подаваться в мейн по времени, а через меню все нормально, но если включить подачу цитат только по таймеру, то скрипт выполняет свои функции полностью.
P.S. Оказывается, предпоследний пост был написан тоже мной. Похоже скрипт больше не поддерживается, а жаль :(

Автор: shullz 9.8.2011, 15:38

Цитата(Parad0x @ 1.3.2011, 21:54) *
сервер Centos 5.5.
При включении подачи цитат "TimerPlusMenu". Цитаты перестают подаваться в мейн по времени, а через меню все нормально, но если включить подачу цитат только по таймеру, то скрипт выполняет свои функции полностью.
P.S. Оказывается, предпоследний пост был написан тоже мной. Похоже скрипт больше не поддерживается, а жаль :(

Замени в скрипте строки 61, 199, 232
Код
if sType == "Timer" then
на:
Код
if sType == "Timer" or sType == "TimerPlusMenu" then

и все. big_smile.gif

Автор: KCAHDEP 4.5.2012, 14:02

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

тырк
Код
[15:01:40] <-=Единорог=->    [ Bash.Org.Ru - Цитатник Рунета ]
    ====================================================================================================
     [ Цитата №416756, Добавлено Fri, 27 Apr 2012 12:11:49 +0400[New!!!] ]
    ====================================================================================================
    ?????? ??? ???????? ? ????????????
    - ? ??? ???????? ? ??????? ????????.
    - ? ????? ?????????, ? ???? ??? ? ???????????, ?? ???????!
    - ?? ??????, ?? ???????????.
    ====================================================================================================

Автор: Артём 4.5.2012, 16:23

KCAHDEP, кодировка, не?

Автор: KCAHDEP 4.5.2012, 16:51

Цитата(Артём @ 4.5.2012, 17:23) *
KCAHDEP, кодировка, не?

понятно что кодировка, mysql таблицы cp1251, а не кажет все равно и utf-8 ставил shocked.gif
Или не туда смотрю?