У многих это "заранее", зависит от трафика, и если мобильный телефон, то это "заранее" бывает не сработает, клиент уже всё посмотрел, а реклама прогрузилась выше.
Не рекомендую т.е. отложенная загрузка рекламы = -60% ЦТР. Оно вам реально нужно? Легче просто блоки рекламы снять.
Забавно, а я что написал sql_mode? 🍿
А через пару дней ещё раз посмотреть, а потом ещё, а потом ещё и так бесконечно 🍿
И кто вам сказал, что проблема в mysql? Проблема в основном в самих сайтах.
Без понятия, это надо весь движок смотреть. Можете программиста нанять он вам проверит код.
Вот так и решать.
Только вместо этого кода можно сделать так:
$card_id=intval($card_id);
ИЛИ же, ещё более правильно сделать, объявить переменную $card_id=0; до начала работы.
Или переделать запросы на стандарт, что на мой взгляд лучше.
Или же в конфиг my.ini добавить:
sql_mode=NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
А если докажут, что не бегал, то все издержки на продавца и кросовки с себестоимостью копейки, превратятся в золотые. Нафиг это надо? Это же не машина за лямы. Клиент получил деньги, подумает и купит опять же их.
Внимательно посмотрите мой пример, я вам дал готовый код. Подумайте, что там написано и почему там вся строчка.