confirmed session expired при поиске

Dr_Brown

User
TP version
other
Привет, кто помнит такой баг на старых версиях движка, если перейти на 2-ю страницу поиска

session expired

не посдкажите как решить?
 
Здравствуйте, подскажите, на какую версию обновились из репо? Вообще эта сессия настраивается из кфг
 
добрый, да не обновлялся, старая версия
1687841015622.webp


просто думал может кто вспомнит
 
можете выцепить search.php с движка и скинуть сюда? Речь идёт же об этои поиске, верно?
 
Может имел ввиду в tracker.php? У меня там такое бывало. Я в свое время много правок переносил с гитхаба, но когда стали подключать библиотеки сторонние, просто забил и пошел своим путем
2023-06-30_14-50-07.jpg
:D
 
Last edited:
PHP:
if ($search_id)
{
    $row = DB()->fetch_row("
        SELECT search_array, search_settings
        FROM ". BB_SEARCH ."
        WHERE session_id = '$session_id'
            AND search_type = ". SEARCH_TYPE_TRACKER ."
            AND search_id = '$search_id'
        LIMIT 1
    ");

    if (empty($row['search_settings']))
    {
        bb_die($lang['SESSION_EXPIRED']);
    }

    $previous_settings = unserialize($row['search_settings']);
    $tor_list_sql = $row['search_array'];
    $tor_list_ary = explode(',', $tor_list_sql);
    $tor_count    = count($tor_list_ary);
    unset($row);
}
 
PHP:
if ($search_id)
{
    $row = DB()->fetch_row("
        SELECT search_array, search_settings
        FROM ". BB_SEARCH ."
        WHERE session_id = '$session_id'
            AND search_type = ". SEARCH_TYPE_TRACKER ."
            AND search_id = '$search_id'
        LIMIT 1
    ");

    if (empty($row['search_settings']))
    {
        bb_die($lang['SESSION_EXPIRED']);
    }

    $previous_settings = unserialize($row['search_settings']);
    $tor_list_sql = $row['search_array'];
    $tor_list_ary = explode(',', $tor_list_sql);
    $tor_count    = count($tor_list_ary);
    unset($row);
}
Спасибо за находку, исходя из кода, ошибка "session expired" появляется если поле search_settings в таблице с результатами поиска пустое. Остается разобраться почему оно пустое (как я понял там настройки используемые во время поиска / фильтры) и нужна ли вообще ошибка если оно пустое :). Пока что в качестве временного решения можно закомментировать строку, если напрягает. Таких проверок в движке две, одна в tracker.php, другая в search.php
 
Last edited:
ошибка, пока не всплывает....найдется, попробую решить с помощью выше указанных методов
 
При переходе на вторую страницу получаем ссылку вида /tracker.php?search_id=BDYneroAQdFr&start=50
Если разлогиниться и авторизоваться снова на этой странице получим session expired
 
Back
Top