Добрый день. Использую древнюю CMS - Art CMS 2.1.5. При переходе в модуль меню (в админке по адресу admin/?page=menu&token=37053babff3523cbb268a17f228d2111), вылетает ошибка:
Fatal error: Uncaught Error: Call to undefined function mysql_fetch_assoc() in public_html/admin/modules/menu/index.php:244 Stack trace: #0
public_html/admin/modules/menu/index.php(232): get_menu_tree() #1
public_html/admin.php(146): include('/home/climatven...') #2
public_html/admin.php(156): load_module('menu', false) #3 {main} thrown in
public_html/admin/modules/menu/index.php on line 244
В итоге на 244 строчке этого файла этот код:
while($row = mysql_fetch_assoc($res)) {
На 232 строчке:
$tree = get_menu_tree();
И вот общий участок кода:
Switch($action) {
case ('up' || 'down'):
if($obj_sql->query("SELECT position, parent FROM ".SQL_PREF."category_misc WHERE id=".SQL_INT, $_POST['catID'] ) && $cur_pos = $obj_sql->FetchAssoc() ) {
if($action == 'up' ) {
$obj_sql->query("SELECT c1.id, c1.position FROM `category_misc` c1 WHERE c1.position < ".SQL_INT." AND parent=".SQL_INT." ORDER BY c1.position DESC LIMIT 1", $cur_pos['position'], $cur_pos['parent']);
}
else{
$obj_sql->query("SELECT c1.id, c1.position FROM `category_misc` c1 WHERE c1.position > ".SQL_INT." AND parent=".SQL_INT." ORDER BY c1.position ASC LIMIT 1", $cur_pos['position'], $cur_pos['parent']);
}
$upd = $obj_sql->FetchAssoc();
$obj_sql->query("UPDATE ".SQL_PREF."category_misc SET position=".SQL_INT." WHERE id=".SQL_INT, $upd['position'] , $_POST['catID'] );
$obj_sql->query("UPDATE ".SQL_PREF."category_misc SET position=".SQL_INT." WHERE id=".SQL_INT, $cur_pos['position'] , $upd['id']);
}
header("Location: /admin/?page=menu&$_GET_TOKEN");
break;
default:
$module_tpl->get_tpl($params['path'].'tpl.htm');
$tree = get_menu_tree();
$module_tpl->set_tpl('{options}' , $tree);
break;
$module_tpl->parse_tpl();
function get_menu_tree($checked = false) {
global $obj_sql;
if($res = $obj_sql->query("SELECT * FROM ".SQL_PREF."category_misc AS c LEFT JOIN ".SQL_PREF."categories AS cname ON c.id=cname.id ".
"WHERE c.parent != 0 ORDER BY c.parent, c.position") )
{
while($row = mysql_fetch_assoc($res)) {
$tmp[$row['id']] = $row;
if($row['parent'] == -1 ) {
$item[$row['id']]['item'] = "<option ".($row['status']!=1 ? "style='color:#969696'" : '')." value={$row['id']} ".( ($checked && $checked==$row['id'] ) ? 'selected' : '' )." >".str_repeat(' ',8).$row['name']." ({$row['url']})</option>\r\n";
}
else {
$item[$row['parent']]['sub'][] = "<option ".($row['status']!=1 || $tmp[$row['parent']]['status']!=1 ? "style='color:#969696'" : '')." value={$row['id']} ".( ($checked && $checked==$row['id']) ? 'selected' : '' )." >".str_repeat(' ',20).$row['name']." ({$row['url']})</option>\r\n";
}
}
}
$tree = "";
$tree = "<option value=-1 disabled>ROOT</option>\r\n";
foreach($item as $t) {
$tree .= $t['item'];
if( isset( $t['sub'] ) && !empty( $t['sub'] ) ) $tree .= implode('', $t['sub']);
}
return $tree;
}
В БД две записи есть (которые в запросе). Подскажите, куда копать можете подсказать, чтобы победить ошибку? Спасибо.