По диалогам в страницах -
kennydalglish - 25.12.2014
Доброго времени суток, уважаемые посетители SA-MP.com
У меня возникла проблема, как сделать страничный диалог.
То есть:
На 1 диалоге выводит, 10 страниц записей (Из БД)
На 2 диалоге выводит, 10 страниц записей (Из БД), и т.д
Заранее спасибо, кто поможет
С новым годом всех!
Re: По диалогам в страницах -
Privies - 25.12.2014
Это далеко не павно инфо.
Создаешь диалог, там 11 ячеек. 10 берётся из бд, 11 это кнопка "следующая страница".
Далее, если игрок нажал на следующая страница, показываешь из бд уже 10 ячеек.
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by Privies
Это далеко не павно инфо.
Создаешь диалог, там 11 ячеек. 10 берётся из бд, 11 это кнопка "следующая страница".
Далее, если игрок нажал на следующая страница, показываешь из бд уже 10 ячеек.
|
Причем тут павно инфо?
Ай я уже 2 неделю голову ломаю, и что мне с ячейками делать?
Почему нельзя помочи кодом, с комментариями по мне это будет куда лучше...
Re: По диалогам в страницах -
White_116 - 25.12.2014
Quote:
Originally Posted by kennydalglish
Причем тут павно инфо?
Ай я уже 2 неделю голову ломаю, и что мне с ячейками делать?
Почему нельзя помочи кодом, с комментариями по мне это будет куда лучше...
|
Куда лучше будет, головой начать думать. На крайний случай есть яндекс и гугл.
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by White_116
Куда лучше будет, головой начать думать. На крайний случай есть яндекс и гугл.
|
Ну я и думаю, если бы понимал как, я бы не спрашивал не?
Что мне дает гугл и яндекс?
Даже не знаю как запрос забить
Re: По диалогам в страницах -
SoNikMells - 25.12.2014
pawn Код:
`id` — AID в таблице
new listed = 4; // Номер странички 4 к примеру
new str[60];
format(str, 60, "SELECT * FROM `table` ORDER BY `id` ASC LIMIT %i,10", listed * 10);
mysql_tquery(1, str, "GetContent", "");
public GetContent()
{
new rows = cache_get_row_count();
if(!rows) return;
for(new i; i != rows; i++)
{
}
}
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by SoNikMells
pawn Код:
`id` — AID в таблице
new listed = 4; // Номер странички 4 к примеру new str[60]; format(str, 60, "SELECT * FROM `table` ORDER BY `id` ASC LIMIT %i,10", listed * 10); mysql_tquery(1, str, "GetContent", "");
public GetContent() { new rows = cache_get_row_count(); if(!rows) return; for(new i; i != rows; i++) { } }
|
Спасибо, но а если как то без указание максимального числа страниц?
То есть без:
Просто получается не по РП, приходит бизнесмен в банк и говорит мне распечатку банковских счетов, а они ему у нас только 4 страницы..
Re: По диалогам в страницах -
SoNikMells - 25.12.2014
Одна страница, это 10 записей.
По вашим словам в диалогах по 10 строк, первые 10 строк: listed = 0, 11-20 строка: listed = 1
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by SoNikMells
pawn Код:
`id` — AID в таблице
new listed = 4; // Номер странички 4 к примеру new str[60]; format(str, 60, "SELECT * FROM `table` ORDER BY `id` ASC LIMIT %i,10", listed * 10); mysql_tquery(1, str, "GetContent", "");
public GetContent() { new rows = cache_get_row_count(); if(!rows) return; for(new i; i != rows; i++) { } }
|
Quote:
Originally Posted by SoNikMells
Одна страница, это 10 записей.
По вашим словам в диалогах по 10 строк, первые 10 строк: listed = 0, 11-20 строка: listed = 1
|
Ну и получается ограничение, на 4 страницы не?
Что бы закрыть продолжение о "Можно же увеличить до 10 и т.д", мне не нужно ограничение, можно как то без него?
Re: По диалогам в страницах -
Stepashka - 25.12.2014
Т.е. мозгов тебе не хватает получить количество всех записей в БД, разделить их на 10 и округлить до большего значения?
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by Stepashka
Т.е. мозгов тебе не хватает получить количество всех записей в БД, разделить их на 10 и округлить до большего значения?
|
Т.е: все на цело делиться не будут, допустим 61 запись (rows ей вернет сколько записей в базе), / 10 = 6.1
И тогда я хз, как в Pawn округлить до целой....
Re: По диалогам в страницах -
Stepashka - 25.12.2014
Tочно так же как и везде, существует три функции
round,
ceil и
floor. Или их модификации.
Причем тебе они доступны как в
pawn так ещё и в
MySQL.
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
если можно ссылку на wiki pawn с функций
Re: По диалогам в страницах -
Stepashka - 25.12.2014
Вы явно форумом и занятием ошиблись!
Другие функции скриптинга
Re: По диалогам в страницах -
OKStyle - 25.12.2014
Зачем округлять, пусть будет 7 страниц. Получится, что на последней будет 1 запись.
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by OKStyle
Зачем округлять, пусть будет 7 страниц. Получится, что на последней будет 1 запись.
|
PHP код:
CMD:ceil(playerid)
{
new Float: number_one, Float: number_two, str[128]; // Тестовая ячейка...
number_one = 15 / 9;
//floatabs(number_two);
format(str, sizeof str, "%f", number_one);
SendClientMessageToAll(-1, str);
format(str, sizeof str, "%f", floatabs(number_one));
SendClientMessageToAll(-1, str);
}
Возвращает 1, и с функций 1, смысл использование функций?
__________________________________________________ _____
Допустим я разделил, дальше запишу значение в глобальную переменную, а дальше какие действия?
Re: По диалогам в страницах -
Stepashka - 25.12.2014
Ты вообще знаешь разницу между абсолютной частью числа и округлением числа?
Сравнивай:
floatabs(5.9)
floatround(5.9)
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
PHP код:
CMD:ceil(playerid)
{
new Float: number_one, Float: number_two, str[128];
number_one = 15 / 9;
//floatabs(number_two);
format(str, sizeof str, "%f", number_one);
SendClientMessageToAll(-1, str);
format(str, sizeof str, "%d", floatround(number_one, floatround_ceil));
SendClientMessageToAll(-1, str);
}
И там и там 1....
А все же потом алгоритм какой?!
Запишу в глобальную переменную, а дальше как и что делать?
Re: По диалогам в страницах -
SoNikMells - 25.12.2014
kennydalglish, мягко говоря, немного в перед с этой темой ты залез.
Поучи немного массивы, операторы, функции Pawn.
Со временем доберёшься до этой темы и решишь её сам.
Re: По диалогам в страницах -
kennydalglish - 25.12.2014
Quote:
Originally Posted by SoNikMells
kennydalglish, мягко говоря, немного в перед с этой темой ты залез.
Поучи немного массивы, операторы, функции Pawn.
Со временем доберёшься до этой темы и решишь её сам.
|
Почему нельзя помочь, просто помочь с комментарием кода, я этого не пойму...
Да и массивы, операторы и фун-ци Pawn я знаю