Да, не просто
\engine\classes\uploads\upload.class.php
$this->from = $imageurl;
Возможно этот код добавленный ниже поможет
$bits = explode( '?', $imageurl, 2 ); $imageurl = $bits[0];
Или возможно так
RewriteEngine on RewriteCond %{QUERY_STRING} ^(r_id=\d+)" [OR] RewriteCond %{REQUEST_URI}%{QUERY_STRING} ^index\.php\?(r_id=\d+) RewriteRule ^ /?%1 [L,R=301]
В итоге у вас ничего не изменилось кроме флага NC, который тут нафиг не нужен, если вы не собираетесь делать регистро-независимое сравнение строк. Правильные решения указаны выше.
Там же специально выделено жирным символ который у вас отсутствует. Неужели не видно и не понятно что его нужно добавить? И при условие, что вы делаете редирект с /?action=hot, в противном случае надо ставить анти-зацикливание как показали выше.
Сравните свой пример и тот, который я написал. У вас его нету, в моем случае присутствует. Логика понятна?
При каждом обновлении данных (имени, прочая ебала которая в сессии) делайте запрос в таблице которая загружается у пользователя. Или у вас вообще нет запросов в бд? Тогда городите костыли.
Установить поле при изменении каких-то данных в бд - need rebuild session
Статическая таблица (при желании memory), удаление по времени. Не вижу проблемы. Умными решениями костылями окажетесь в ситуации, когда весь этот костыль будет все сложнее поддерживать и масштабировать.
А что такое акес?
Вы не сбросили параметры запроса http://sait.ru/hot.html?
Спросите у вашего хостера.