"никому доступ не нужен" и "Оттуда берутся JSON файлы"
Эти две фразы взаимоисключающие.
Если никому доступ не нужен - то нафига директория в document root вообще? Вынесите её за пределы веб-сервера.
Если кому-то нужно получать именно по http - значит этому кому-то доступ нужен.
Сначала стартовать транзакцию, потом хватать локи. Если надо запретить любую деятельность в таблице - то lock table, да. Если только другие процессы, выполняющие эту же самую задачу - то лучше advisory lock брать в начале деятельности. mysql их даже умеет https://dev.mysql.com/doc/refman/5.7/en/miscellane... Но не знаю, насколько хорошо умеет.
Не виден, конечно. Ни в функции как в вопросе, ни в методе класса. Разные области видимости.
В чём счастье что-то делать и не слушать лучшего друга - компилятор - я хз. Поставьте свой error_reporting в адекватный E_ALL.
Это настройка в php.ini.
Понятий не имею, куда обычно под виндами пишут сессионные файлы. Достаточно любой директории, доступной на чтение и запись пользователю, от имени которого работает PHP.
Сможет, разумеется. А чем это помешает? Может быть вам не нужна такая логика и хотите искать именно знак процента. Для безопасности - без разницы.
Варианты безопасны, если ваш драйвер внятно выполняет либо prepared statements либо экранирование.
_Нужно_ заранее определить функцию. Но только при реализации в JS.
Потому что jsonp вызывается через банальное добавление script src="..." в DOM. Когда приезжает ответ - он выполняется как рядовой JS. JSON парсится как рядовой JS (строго говоря поэтому тип данных на входе функции - только mixed. Объект это, строка, число, массив или просто null - проверять в самой функции). И вызывается указанная функция с таким вот неизвестно каким аргументом.
Запросом из PHP это, разумеется, не работает. PHP - это не JS. И получить надо именно JSON без внешней мишуры из вызова функции.
> колонку с int(2) - то есть ограничение
Не вводите людей в заблуждение, пожалуйста. int(2) и int(11) ничем между собой не различаются. И тот и другое 32-битные целые числа с соответствующим 32-битным диапазоном значений. Цифра в скобках - подсказка, которую может использовать клиент для форматирования вывода. Только и всего. Ограничением никогда не являлась и не является. https://dev.mysql.com/doc/refman/5.7/en/numeric-ty...
Ограничения на данные - это check constraint. mysql их банально не умеет. Приходится колхозить ограничения через триггеры или только на уровне приложения. Удалить из update триггера эту самую строку не выйдет.
Дальше = что происходит с результатом выполнения хранимки. Не просто так ведь от нечего делать она возвращает набор строк?
Курсор не материализуется. Да и память не жрёт.
ip route
Если у вас какая-то маргинальная ОС - уточняйте в её документации, где смотреть таблицу маршрутизации.
Карта сети - электронное, бумажное или хотя бы только в своей голове понимание, где есть клиент и где есть необходимый удалённый хост со всеми адресами, масками сети, сетевыми соединениями и другими роутерами со своими подсетями между ними. Т.е. как должны идти пакеты от клиента до хоста и обратно.
Не правильно. Так же см. спеки контроллера памяти, т.е. процессора. Заявлен лимит 32гб, но я немного сомневаюсь, что пара модулей по 16гб всё-таки заработают (хоть и существуют такие). Можно проверить. Пара по 8гб работать должны.
или group by id_user, data
Глянуть explain'ом, что будет интереснее.