Ещё момент, для удачного присвоения conf('category.data', array(...)); в массиве $CONF уже должно существовать значение 'data': $CONF['category']['data'] = array();. Иначе будет ошибка, и никакого присвоения...
Хм. Возможно у вас версия Notepad++ старовата, не понимает \1. Тогда используйте строку $1. Или вы не поменяли строку поиска на новую, <a href="[^"]+">([^<]+)</a>?
nikitoshq, кстати, пока поборник писания чистого кода не видит, акцентирую ещё один момент - в моём коде нет обработки ситуации, когда вставка новой записи в таблицу приводит к ошибке "такая запись уже существует".
Если такую ошибку не обрабатывать - через некоторое время рабочая же вроде программа превратится в глючное хрен-знает-что с базой данных, набитой непонятными данными.
Ругань конечно руганью, холивар священен, но почему бы не использовать строковую функцию именно для безопасной подготовки строки? $query = "SELECT * FROM users where id = '{$id}'";
P.S. Множество продуктов, работающих именно так - и нет, ну нет в этих Тырнетах стонов о ежедневно обрушаемых базах данных и взламываемых через SQL продуктах...
Что-то мне чудится, что и этот вариант не на долго даст скорости. Если база не стала пользоваться индексами при INNER JOIN, то и при WHERE не станет, особенно по мере наполнения таблиц данными.
Вердикт: Лучше бы автору вопроса подналечь на построение индексов, они для этого и придуманы...
Из консоли можно посмотреть на трафик, таких программ полно. Рекомендую iptraf, она есть в репозитории Debian-а. Увидите трафик - поймёте, с каким сервисом идёт работа, и откуда именно подключились...
И поставьте fail2ban, сконфигурируйте, очень сильно поможет против диких сканов/подборов. Ещё есть утилита AIDE, это сторонний аналог debsums. Но её нужно запускать на чистой системе, а сейчас, когда есть подозрение - уже поздно.
newaitix, а вот вдруг вспомнилось/подтвердилось: почистите ваш Windows утилитой Dism++, и в наипервейшую очередь - WinSxS репозиторий, ну оооочень помогает на тормозных компьютерах.
/path конечно же уберите, он написан ДЛЯ ПРИМЕРА. Его наличие/отсутствие НЕ ВЛИЯЕТ на появление кноночки, она будет ВСЕГДА, когда в запросе есть successURL. Ещё раз повторяю, эта кнопка будет всегда, так пользователю даётся право решить, хочет он переходить или не хочет.
Татьяна Degtyarenko, Как правило в /path пишется что-нибудь типа /расчёски/большие/index.php?tovar=123456, что-бы пользователю показали конкретный товар за номером 123456. Если вместо /path ничего не будет вписано - то пользователь попадёт на главную, входную страничку сайта.
И /расчёски/большие/ у вас конечно не существует, поэтому вам надо писать всё своё...
Значит в коде страницы, из которой грузится этот PHP-файл, написано, что результат обращения нужно вывести в alert-е.
Возможно там стоит проверка "данные в нужном формате?", и если нет - то "вывести alert(), потому что это ошибка прилетела". Или какая-то другая логика, смотрите JS в странице, из которой грузится PHP-файл.
Мда, современные производители всё меньше и меньше опций в ноутбуках дают менять... Совсем охренели!
Это решение для уже установлленой версии Ubuntu, когда файлы находятся на SSD-диске назначения. Тогда и update-grub будет работать. А для установки, что-бы установочная программа увидела SSD - нужно при запуске отредактировать параметры ядра, то самое нажатие клавиши 'e' на выделенном пункте меню, и вписать столь критичное 'quiet splash nvme_core.default_ps_max_latency_us=200' (без кавычек)...
Ну смотрите, если $query==403, то получается такой код: if (is_eampty(403) or 403 != 404 or 403 != 403){
Вы ведь не будете спорить, что 403 не равно 404, да? Вот среднее условие и срабатывает.