Forums / National / Russian / Тех. поддержка / Как вывести id предложения к проекту?

ed.moriarti
#1 2021-04-15 08:25

Привет!

файл project.offers.tpl допустим к проекту оставлено 3 предложения.

как вывести общее количество предложений это понятно {ALLOFFERS_COUNT}
А вот вопрос, как вывести в каждом из этих трёх предложений их порядковый номер? 1, 2, 3?

Kopusha
#2 2021-04-15 16:16

Так OFFER_ROW_ID или OFFER_ROW_NUM?

{OFFER_ROW_ID} так и выводится, если нужно порядок строки цикла то надо найти while ($offer = $sql->fetch())

и там

$jj++;//вот это
$t_o->assign(cot_generate_usertags($offer, 'OFFER_ROW_OWNER_'));
$t_o->assign(array(
"OFFER_ROW_NUM" => $jj,//вот это добавить
"OFFER_ROW_DATE" => cot_date('d.m.Y H:i', $offer['offer_date']),
"OFFER_ROW_DATE_STAMP" => $offer['offer_date'],
"OFFER_ROW_ID" => $offer['offer_id'],
"OFFER_ROW_TEXT" => cot_parse($offer['offer_text']),
"OFFER_ROW_COSTMIN" => $offer['offer_cost_min'],
"OFFER_ROW_COSTMAX" => $offer['offer_cost_max'],
"OFFER_ROW_TIMEMIN" => $offer['offer_time_min'],
"OFFER_ROW_TIMEMAX" => $offer['offer_time_max'],
"OFFER_ROW_TIMETYPE" => $L['offers_timetype'][$offer['offer_time_type']],
"OFFER_ROW_HIDDEN" => $offer['offer_hidden'],
"OFFER_ROW_CHOISE" => $offer['offer_choise'],
));

 

Added 40 seconds later:

Можно и "OFFER_ROW_ODDEVEN" => cot_build_oddeven($jj),

ed.moriarti
#3 2021-04-15 20:03
#45323 Kopusha:

Так OFFER_ROW_ID или OFFER_ROW_NUM?

{OFFER_ROW_ID} так и выводится, если нужно порядок строки цикла то надо найти while ($offer = $sql->fetch())

и там

$jj++;//вот это
$t_o->assign(cot_generate_usertags($offer, 'OFFER_ROW_OWNER_'));
$t_o->assign(array(
"OFFER_ROW_NUM" => $jj,//вот это добавить
"OFFER_ROW_DATE" => cot_date('d.m.Y H:i', $offer['offer_date']),
"OFFER_ROW_DATE_STAMP" => $offer['offer_date'],
"OFFER_ROW_ID" => $offer['offer_id'],
"OFFER_ROW_TEXT" => cot_parse($offer['offer_text']),
"OFFER_ROW_COSTMIN" => $offer['offer_cost_min'],
"OFFER_ROW_COSTMAX" => $offer['offer_cost_max'],
"OFFER_ROW_TIMEMIN" => $offer['offer_time_min'],
"OFFER_ROW_TIMEMAX" => $offer['offer_time_max'],
"OFFER_ROW_TIMETYPE" => $L['offers_timetype'][$offer['offer_time_type']],
"OFFER_ROW_HIDDEN" => $offer['offer_hidden'],
"OFFER_ROW_CHOISE" => $offer['offer_choise'],
));

 

Added 40 seconds later:

Можно и "OFFER_ROW_ODDEVEN" => cot_build_oddeven($jj),

 

Спасибо! Все работает, но Есть нюанс.

я добавил однопредоожение ( допустим в 10:00) оно получило порядковый номер 1

потом добавил второе предложение ( допустим в 10:10, то есть позже) то есть по идее первое сдвигается вниз по списку, а второе получается вверху по списку. По логике то которое добавлено позже должно получить порядковый номер - 2, НО получается что порядковый номер как то сдвигается и нумеруется сверху вниз, то есть то которое было под порядковый номером 1 стало под номером 2, а то которое добавлено позже стало под номером 1.


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

почему так? Что нужно сделать чтобы было норм?

 

Kopusha
#4 2021-04-17 09:48

потому что это порядковый номер. Идет запрос в БД "выведи мне XXX сущностей по порядку убывания даты"
Первым выводится самое недавно добавленное, оно и имеет порядковый номер 1. Вторым добавленное позже - и оно по порядку второе. 

jCube Group
#5 2021-04-17 14:59

OFFER_ROW_ID не меняется.

Сделал группу в телеге https://t.me/Cotonti_help если что помогу с вопросами.
ed.moriarti
#6 2021-04-17 16:11
#45327 Kopusha:

потому что это порядковый номер. Идет запрос в БД "выведи мне XXX сущностей по порядку убывания даты"
Первым выводится самое недавно добавленное, оно и имеет порядковый номер 1. Вторым добавленное позже - и оно по порядку второе. 

Теперь другой момент! Я разобрался!

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

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

как сделать чтобы нумерация каждого поста в переписке под каждым предложением была своя ?

 

Добавлено 1 минута спустя:

Использую при этом по аналогии {POST_ROW_NUM}

Kopusha
#7 2021-04-17 16:57

пробовать связать JJ++ и  $offer['offer_id'] который уникальный...хрен его знает

ed.moriarti
#8 2021-04-17 17:32

Я найду уникальный... но каким кодом их связать? 

Добавлено 26 минут спустя:

#45328 jCube Group:

OFFER_ROW_ID не меняется.

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


Dit bericht is bewerkt door ed.moriarti (2021-04-17 17:59, 3 jaren ago)
Kopusha
#9 2021-04-18 09:25

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

jCube Group
#10 2021-04-18 18:26

Вообще не понимаю что вы делаете если нет знаний программирования? 
Нашли в php где задаются переменны,  прочитали,  если чего нет добавили, если нет знаний забудьте,  проект не получится.

Сделал группу в телеге https://t.me/Cotonti_help если что помогу с вопросами.