- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Тренды маркетинга в 2024 году: мобильные продажи, углубленная аналитика и ИИ
Экспертная оценка Адмитад
Оксана Мамчуева
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день! После обновления mysql при авторизации на сайте выдает ошибку:
INVALID SQL: UPDATE vcard_sessions SET user_id='211', cpuser_id='' WHERE sid='f1999d55183ef3a' AND mix='9e2dfc0dd2740b4980520e8a3725077b'
mysql error: Incorrect integer value: '' for column `rc_card`.`vcard_sessions`.`cpuser_id` at row 1
mysql error number: 1366
Date: 2019/12/21 - 08:24:08 PM
Script: /login.php
Вероятно что-то изменилось в синтаксисе mysql, раньше он распознавал пустое значение в запросе для поля с типом integer как 0 или null, а сейчас выдаёт просто ошибку.
Помогите, пожалуйста, решить проблему.
Код файла login.php
Или переделать запросы на стандарт, что на мой взгляд лучше.
Или же в конфиг my.ini добавить:
sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Одну похожую проблему решили добавлением кода
if (!isset($card_id) OR empty($card_id)) $card_id = 0;
LEOnidUKG, подскажите, пожалуйста, как переделать запросы на стандарт.
Вот так и решать.
Только вместо этого кода можно сделать так:
$card_id=intval($card_id);
ИЛИ же, ещё более правильно сделать, объявить переменную $card_id=0; до начала работы.
LEOnidUKG, подскажите, пожалуйста, в коде файла login.php куда нужно добавить этот код?
LEOnidUKG, подскажите, пожалуйста, в коде файла login.php куда нужно добавить этот код?
Без понятия, это надо весь движок смотреть. Можете программиста нанять он вам проверит код.
strict_mode надо выключить, скорее всего - и сайт править не придётся.
lonelywoolf, спасибо огромное! Помогло!
lonelywoolf, спасибо огромное! Помогло!
Забавно, а я что написал sql_mode? 🍿
Забавно, а я что написал sql_mode? 🍿
Там гуглится оно по разному. Ну и вы не всё в строке вырубили, поэтому помогло.