Я уже находил эту ошибку.
Связана с тем что в базе данных, в айди танков, могут быть пропуски цифр. Исправляется вот так:
Надо найти код:
Код: Выделить всё $sql = "SELECT * FROM tanks ORDER BY id ASC;";
$q = $db->prepare($sql);
if ($q->execute() == TRUE) {
$tank_name = $q->fetchAll();
} else {
print_r($q->errorInfo());
die();
}
И заменить на:
Код: Выделить всё $sql = "SELECT * FROM tanks ORDER BY id ASC;";
$q = $db->prepare($sql);
if ($q->execute() == TRUE) {
$tank_name_tmp = $q->fetchAll(PDO::FETCH_ASSOC);
} else {
print_r($q->errorInfo());
die(38);
}
foreach($tank_name_tmp as $tmp) {
$tank_name[$tmp['id']] = $tmp;
}
unset($tank_name_tmp);
Вот только после этого крон что-то глючит ... может показывать одни танки, хотя у человека другие танки недавно появились.
Ну и некоторое время будет показывать у людей танки которые давно открыты.
По хорошему конечно надо бы избавится от использования id танков, слишком ненадежный и вариативный параметр.