myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
53 страниц V  « < 14 15 16 17 18 > »   
Ответить в данную темуНачать новую тему

> Вопросы Разработчикам Скриптов, вопросы по скриптам (мелкие вопросы)

vicious
сообщение 8.4.2009, 1:53
Сообщение #301


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Спасибо...пока не понял...щас попробуй разобраться...

Вопрос следущий! big_smile.gif os.time это что такое? точкой отсчета что там является...я чет не понял!
Как пользоваться понял, а почему оно такое - нет!))) Кто подскажет?
Go to the top of the page
+Quote Post
Setuper
сообщение 8.4.2009, 11:53
Сообщение #302


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Точкой отсчёта в функции os.time() является начало эры UNIX.
http://ru.wikipedia.org/wiki/UNIX-%D0%B2%D...%B5%D0%BC%D1%8F
Go to the top of the page
+Quote Post
vicious
сообщение 8.4.2009, 20:31
Сообщение #303


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Понятно!...я тут уже почти написал бетку скрипта который я когда то просил "Книга жалоб и предложений"...
Появился следущий вопрос...
Как изменить N-ую строку в текстовом файле?....щас пример кода дам, что мне нужно:
Код
for str in io.lines(Core.GetPtokaXPath().."scripts/Книга ЖиБ/messages.txt") do
    stri = stri + 1
    if stri == 5 then
        for sN, sName, sMes, sSt, dIp in string.gmatch(str,"(%d+)%s+(%S+)%s+{(.-)}%s+{(.-)}%s+{(.-)}") do
            (тут мне нужен код, которым я эту 5 строку заменю...к примеру вот этим: ""..sN.." "..sName.." {"..sMes.."} {"ответ не нужен"} {"sIp"}")
        end
    end
end
Go to the top of the page
+Quote Post
Setuper
сообщение 8.4.2009, 20:39
Сообщение #304


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Хм... как-то всё муторно. Почему именно 5-ю строчку? Не легче ли сделать сохранение в таблицу того, что надо?
Go to the top of the page
+Quote Post
Wariner
сообщение 8.4.2009, 20:40
Сообщение #305


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




поддерживаю! с таблицами работать гораздо проще и удобнее)))
Go to the top of the page
+Quote Post
vicious
сообщение 8.4.2009, 21:00
Сообщение #306


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Цитата(Setuper @ 8.4.2009, 21:39) *
Хм... как-то всё муторно. Почему именно 5-ю строчку? Не легче ли сделать сохранение в таблицу того, что надо?


5 это для примера. Это для книги жалоб и предложений. Когда юзер добавляет, его сообщение записывается в текстовый файл. (в конце это записи там указывается статус: нужен ли ответ или не нужен)

так вот...я смотрю в примеру последние 10 записей...и собираюсь ответить на одну из тех у которой статус "нужен ответ"....отвечаю...и надо чтобы эта запись в текстовом файле изменилась...а точнее - изменился в ней в конце статус с "нужен ответ" на "отвечено"


Цитата(Wariner @ 8.4.2009, 21:40) *
поддерживаю! с таблицами работать гораздо проще и удобнее)))


ну чет каждый раз при обработке текста переводить это все в таблицы, как то муторно мне кажется...мне проще так...с таблицами у меня в коде тоже дел хватает) ...в любом случае уже все почти готово, переделывать не хочется, так что подскажите как сделать то, что я хочу.
Go to the top of the page
+Quote Post
Wariner
сообщение 8.4.2009, 21:04
Сообщение #307


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




делаешь таблицу:
Код
tTemp = {
     ["1"] = {
          ["Nick"] = "Ник",
          ["Msg"] = "Сообщение",
          ["bAns"] = true,
          ["Ans"] = "Ответ",
     },
}

с этим гораздо проще работать!
Go to the top of the page
+Quote Post
Setuper
сообщение 8.4.2009, 21:15
Сообщение #308


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Файл можно переписывать или дописывать в конец файла. Изменить в середине что-либо без переписывания я не представляю как сделать, хотя можно покрутить с методом seek, но на первый взгляд я решения не вижу.
Работа с файлами по средствам таблиц - универсальный метод. big_smile.gif
Go to the top of the page
+Quote Post
vicious
сообщение 9.4.2009, 1:09
Сообщение #309


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




да.......надо было все таки все через таблицы делать...тут проблемка появилась....! подскажите как определить в sData (вообщем в веденном сообщение) наличие знака переноса строки (или как это называется)...ну вообщем мне надо чтобы сообщение принималось только то, которое одной строкой написано....а если писали сообщение многострочное (при помощи сочетания ctrl+enter в дц клиенте....) то оно блокировалось...как это сделать?

Или же...(даже лучше) чтобы все посланное сообщение преобразовывалось в однострочное...а потом я уже это однострочное буду сохранять в файл...

такс...уже сам разобрался как это сделать...!!!
Go to the top of the page
+Quote Post
Setuper
сообщение 9.4.2009, 11:07
Сообщение #310


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Растёшь в мастерстве, и набираешься опыта. big_smile.gif
Увы не многие из новичков, способны к этому. Толи не хотят понимать, толи ленятся пробовать и делать что-либо со скриптами.
Go to the top of the page
+Quote Post
vicious
сообщение 9.4.2009, 13:39
Сообщение #311


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Цитата(Setuper @ 9.4.2009, 12:07) *
Растёшь в мастерстве, и набираешься опыта. big_smile.gif
Увы не многие из новичков, способны к этому. Толи не хотят понимать, толи ленятся пробовать и делать что-либо со скриптами.


да расту...хотя чувствую, что скрипт реализован не самым оптимальным способом...так еще чуть не запутался там пока писал эти куча циклов в куче циклов)))...
Однако все таки проблемка с записью в файл осталась. На данный момент я сделал так, что при ответе на какую-либо запись (в книге жалоб и предложений) запись эта меняется, и файл целиком перезаписывается....но мне кажется это не есть гуд....ведь когда зписей будет много это лишняя напруга!!! Хотелось бы разобраться, как можно перезаписать конкретную строку в файле (мне почему то кажется что это можно с помощью file:seek ([whence] [, offset])...увы в этой англ документации не все могу понять, хотя англ более или менее знаю)...

Бетку прикрепляю, у кого есть время - гляньте, скажите по пунктам что я там сделал "через жопу", дабы учесть на будущее)))
Прикрепленные файлы
Прикрепленный файл  книгаЖиБ.rar ( 3.47 килобайт ) Кол-во скачиваний: 4
 
Go to the top of the page
+Quote Post
Setuper
сообщение 9.4.2009, 13:48
Сообщение #312


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Все таблицы с жалобами можно держать в памяти и время от времени (по таймеру) сохранять в файл - инструкция против сбоев.
При старте скрипта загружаем из файла, при остановке скрипта опять сохраняем в файл.

Зачем держать старые записи? Нужно установить время хранения записи. После истечения этого времени запись логировать и удалять из таблицы.
Go to the top of the page
+Quote Post
vicious
сообщение 9.4.2009, 14:03
Сообщение #313


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Это конапатить весь скрипт, переделывая все под таблицы...к тому же зачем кушать лишнюю память? Щас он кушает очень не много, и это радует.(все таки хочу разобраться с file:seek, если кто знает хорошо как работает это, опишите плз эту функцию) По поводу логирования - да, это хочу сделать таким образом: в текстовом файле хранятся не более N записей, когда появляется запись N+1 - 2-ая становится 1-ой и т.д.... А 1-ая записывается в архив... Однако я в таком случае хочу у себя сделать N = 50, а значит каждый раз при ответе на запись, все 50 строк будут перезаписываться, впринципе мне кажется это не большая напруга (если учитывать что отвечать на записи не прижется часто)
Go to the top of the page
+Quote Post
Setuper
сообщение 9.4.2009, 19:45
Сообщение #314


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Не думаю, что у тебя наберётся хотя бы десяток записей. Думаю, что пользователям будет по барабану на эту функцию у тебя на хабе. Поэтому говорить о том, что мол тратится память не приходится. Может по началу появления этой функции и найдутся те кто будут активно её юзать, но это только на первое время big_smile.gif
Go to the top of the page
+Quote Post
vicious
сообщение 10.4.2009, 17:59
Сообщение #315


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Цитата(Setuper @ 9.4.2009, 20:45) *
Не думаю, что у тебя наберётся хотя бы десяток записей. Думаю, что пользователям будет по барабану на эту функцию у тебя на хабе. Поэтому говорить о том, что мол тратится память не приходится. Может по началу появления этой функции и найдутся те кто будут активно её юзать, но это только на первое время big_smile.gif


Вполне возможно. Но это ничего не меняет...смысл держать все в памяти в таблицах, если можно просто в текстовом файле? 1) кушает меньше памяти 2)при сбое, никакие данные не пропадут....ну разве что из памяти выгрузка будет быстрее происходить...но не думаю что это хоть как-то будет заметно, учитывая немассивность скрипта.
Ну вообщем спорить не имеет смысла...лучше помогите с file:set ...как все таки можно использовать эту функцию? (помимо того, чтобы поставить запись в начало или конец).
Go to the top of the page
+Quote Post
Setuper
сообщение 10.4.2009, 18:19
Сообщение #316


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Дописать можно только в конец файла! Такова особенность библиотеки lua.
Чтобы дописать в середину нужно считать весь файл, изменить нужную строку и перезаписать его.
Go to the top of the page
+Quote Post
vicious
сообщение 10.4.2009, 21:18
Сообщение #317


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




чтож это за язык то такой...даже в паскале можно заменить конкретную строку, насколько помню...а тут нельзя...тада нафига в file:set есть cur позиция?...я так понимаю это сокращенно "текущая"...именно это меня наводит на мысли...

Чет не могу понять, как написать что-нибудь в опчат кодом....отловить сообщение можно....(как я понял оно ловится как и ПМ) а вот как написать туда? но так, чтобы не от ника "Opchat" (как в случае Core.SendToOpchat) а от любого другого ника?
Go to the top of the page
+Quote Post
vicious
сообщение 11.4.2009, 19:03
Сообщение #318


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




Ну че...никто не подскажет?...тут у меня еще один вопрос нарисовался...! Хочу сделать аналог опчата, как послать сообщение юзеру в окошке "Opchat" (или любом другом), но ник там был другой?...т.е. своего рода чатрум......
Я зарегил бота, дал ему ключик, когда в него отсылаюю сообщения юзер с выбранным мною профилем, то остальным приходит сообщение не от опчата а от этого юзера...это не есть гуд! Подскажите как реализовать правильно?

пасиба, с последним вопросом сам разобрался! Глянул скрипт чатрумов!
Go to the top of the page
+Quote Post
vicious
сообщение 11.4.2009, 20:46
Сообщение #319


Продвинутый участник
****

Группа: Пользователи
Сообщений: 173
Регистрация: 26.1.2009
Из: Saratov
Пользователь №: 1 965
Спасибо сказали: 7 раз




опять вопрос!))
Core.RegBot(sBot, sDescription, sEmail, bHaveKey) регистрирует бота, и этот бот виден только Опам чтоль?...чет я туплю походу, но у меня именно так... как сделать видимым всем?
Go to the top of the page
+Quote Post
Wariner
сообщение 11.4.2009, 20:48
Сообщение #320


Самый главный активист :-D
***********

Группа: Модераторы
Сообщений: 2 790
Регистрация: 29.6.2008
Из: г. Тула
Пользователь №: 97
Спасибо сказали: 440 раз




нет. эта функция регистрирует бота на хабе, т.е. добавляет его в список юзеров и виден он всем
Go to the top of the page
+Quote Post

53 страниц V  « < 14 15 16 17 18 > » 
Ответить в данную темуНачать новую тему
3 чел. читают эту тему (гостей: 3, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No new ВАЖНО: Topic has attachmentsМодули для скриптов RusHub
26 Setuper 43 514 21.3.2017, 17:31 Посл. сообщение: Alexey
No new ВАЖНО: Topic has attachmentsВаши Вопросы И Предложения По Поводу Форума
447 Svyat 304 762 20.10.2015, 19:39 Посл. сообщение: Ksan
No New Posts От: Вопросы Разработчикам Скриптов
От темы с ID: 173
0 MIKHAIL 4 064 23.1.2015, 0:56 Посл. сообщение: MIKHAIL
No new Topic has attachmentsВопросы по протоколу NMDC
Делаю программу
26 Master255 27 688 12.1.2015, 0:38 Посл. сообщение: Master255
No New Posts Вопросы к Phazeus по Экзекутору
Мастер может забанить мастера, как решить в Экзекуторе?
1 AndreiDC 5 049 31.10.2014, 19:20 Посл. сообщение: Ksan
No New Posts От: Установка скриптов
От темы с ID: 5657
0 MIKHAIL 4 513 29.7.2014, 23:37 Посл. сообщение: MIKHAIL
No New Posts Установка скриптов
Нужна помощь по установке
2 _wRz_ 6 874 29.7.2014, 16:11 Посл. сообщение: Артём
No new От: Вопросы Разработчикам Скриптов
От темы с ID: 173
29 Wariner 24 536 28.1.2014, 13:11 Посл. сообщение: Alexey
No new Topic has attachmentsВопросы по RusHub
Технические вопросы
316 Jaska 252 988 19.12.2013, 13:59 Посл. сообщение: mod
No new Topic has attachmentsМелкие вопросы
44 Wariner 48 567 19.9.2013, 12:34 Посл. сообщение: Alexey
No New Posts От: Ваши Вопросы И Предложения По Поводу Форума
От темы с ID: 753
3 anila 8 609 28.3.2013, 16:02 Посл. сообщение: настя
No New Posts Единая платформа для скриптов
Обсуждения вопроса создания единой платформы скриптов
5 Enyby 8 484 18.1.2012, 20:15 Посл. сообщение: Setuper
No new Topic has attachmentsПеределка скриптов
Прошу помощи
47 Fe(one)X 38 985 26.12.2011, 15:04 Посл. сообщение: Ksan
No new Topic has attachmentsВопросы Разработчикам Скриптов с SQL
вопросы по скриптам (мелкие вопросы)
101 Wariner 57 592 6.12.2011, 0:34 Посл. сообщение: Enyby
No New Posts От: Вопросы по RusHub
От темы с ID: 2902
4 Otshelnik-Fm 7 986 19.10.2011, 9:23 Посл. сообщение: Mangust

 



RSS Сейчас: 25.4.2024, 14:42