Ошибка модуля mod_latestnews, строка 124

Тема в разделе "Начало работы с Joomla (для начинающих)", создана пользователем ravik, 12.12.2007.

  1. Offline

    ravik Недавно здесь

    Регистрация:
    12.12.2007
    Сообщения:
    5
    Симпатии:
    0
    После апгрейда на сервере вылезла ошибка в модуле mod_latestnews.php

    Ситуация такая, есть новости, разбитые на 2 категории. на главной посредством mod_latestnews они выводятся в 2 колонки, в каждой колонке своя категория. Те есть mod_latestnews1 и его дублер mod_latestnews2 для каждой категории новостей. После апгрейда на сервере новости второй категории перестали отображаться, вместо них указанная ошибка. Новости первой категории на месте и видны на главной.

    Подскажите в чем может быть дело.

    PS
    искал в гугле решения проблемы, нашел сайт. на котором похожая трабла. сделал скрин для наглядности
     

    Вложения:

  2.  
  3. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Ошибка модуля mod_latestnews, строка 124

    И какая версия джумлы (в смысле что там на строчках от 120 до 130)
     
  4. Offline

    ravik Недавно здесь

    Регистрация:
    12.12.2007
    Сообщения:
    5
    Симпатии:
    0
    Ответ: Ошибка модуля mod_latestnews, строка 124

    Код (PHP):
    1. // Output
    2. ?>
    3. <?php
    4. $firstnews=1;
    5. (строка 124)   foreach ( $rows as $row ) {
    6.     // get Itemid
    7.     switch ( $type ) {
    8.         case 2:
    9.             $query = "SELECT id"
    10.             . "\n FROM #__menu"
    11.             . "\n WHERE type = 'content_typed'"
    12.             . "\n AND componentid = $row->id"
    13.             ;
    14.             $database->setQuery( $query );
    15.             $Itemid = $database->loadResult();
    16.             break;
    17.  
    18.         case 3:
    19.             if ( $row->sectionid ) {
    20.                 $Itemid = $mainframe->getItemid( $row->id, 0, 0, $bs, $bc, $gbs );
    21.             } else {
    22.                 $query = "SELECT id"
    23.                 . "\n FROM #__menu"
    24.                 . "\n WHERE type = 'content_typed'"
    25.                 . "\n AND componentid = $row->id"
    26.                 ;
    27.                 $database->setQuery( $query );
    28.                 $Itemid = $database->loadResult();
    29.             }
    30.             break;
    31.  
    32.         case 1:
    33.         default:
    34.             $Itemid = $mainframe->getItemid( $row->id, 0, 0, $bs, $bc, $gbs );
    35.             break;
    36.     }
     
    Последнее редактирование: 17.12.2007
  5. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Ошибка модуля mod_latestnews, строка 124

    Тэкс. А теперь ищи то место где идет
    $rows = $database чего-то там
    и пару строчек выше, что бы запрос увидеть. Но можно сразу попробовать перед строкой с foreach написать нечто такое:
    echo $database->stderr();
     
  6. Offline

    ravik Недавно здесь

    Регистрация:
    12.12.2007
    Сообщения:
    5
    Симпатии:
    0
    Ответ: Ошибка модуля mod_latestnews, строка 124

    встречается в 2-х местах

    Код (PHP):
    1. // select between Content Items, Static Content or both
    2. switch ( $type ) {
    3.     case 2:
    4.     //Static Content only
    5.         $query = "SELECT a.id, a.title, a.created,a.created as created2, a.introtext"
    6.         . "\n FROM #__content AS a"
    7.         . "\n WHERE ( a.state = 1 AND a.sectionid = 0 )"
    8.         . "\n AND ( a.publish_up = '$nullDate' OR a.publish_up <= '$now' )"
    9.         . "\n AND ( a.publish_down = '$nullDate' OR a.publish_down >= '$now' )"
    10.         . ( $access ? "\n AND a.access <= $my->gid" : '' )
    11.         . "\n ORDER BY a.created DESC"
    12.         . "\n LIMIT $count"
    13.         ;
    14.         $database->setQuery( $query );
    15.         $rows = $database->loadObjectList();
    16.         break;
    17.  
    18.     case 3:
    19.     //Both
    20.         $query = "SELECT a.id, a.title, a.sectionid, a.created,a.created as created2, a.introtext, a.catid, cc.access AS cat_access, s.access AS sec_access, cc.published AS cat_state, s.published AS sec_state"
    21.         . "\n FROM #__content AS a"
    22.         . "\n LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id"
    23.         . "\n LEFT JOIN #__categories AS cc ON cc.id = a.catid"
    24.         . "\n LEFT JOIN #__sections AS s ON s.id = a.sectionid"
    25.         . "\n WHERE a.state = 1"
    26.         . "\n AND ( a.publish_up = '$nullDate' OR a.publish_up <= '$now' )"
    27.         . "\n AND ( a.publish_down = '$nullDate' OR a.publish_down >= '$now' )"
    28.         . ( $access ? "\n AND a.access <= $my->gid" : '' )
    29.         . ( $catid ? "\n AND ( a.catid IN ( $catid ) )" : '' )
    30.         . ( $secid ? "\n AND ( a.sectionid IN ( $secid ) )" : '' )
    31.         . ( $show_front == '0' ? "\n AND f.content_id IS NULL" : '' )
    32.         . "\n ORDER BY a.created DESC"
    33.         . "\n LIMIT $count"
    34.         ;
    35.         $database->setQuery( $query );
    36.         $temp = $database->loadObjectList();
    37.        
    38.         $rows = array();
    39.         if (count($temp)) {
    40.             foreach ($temp as $row ) {
    41.                 if (($row->cat_state == 1 || $row->cat_state == '') &&  ($row->sec_state == 1 || $row->sec_state == '') &&  ($row->cat_access <= $my->gid || $row->cat_access == '' || !$access) &&  ($row->sec_access <= $my->gid || $row->sec_access == '' || !$access)) {
    42.                     $rows[] = $row;
    43.                 }
    44.             }
    45.         }
    46.         unset($temp);
    47.         break;
    48.  
    49.     case 1:  
    50.     default:
    51.     //Content Items only
    52.  $query = "SELECT a.id, a.title, a.sectionid, a.catid, a.introtext, a.created, e.title AS cattitle, a.created as created2"
    53.                 . "\n FROM #__content AS a, #__categories AS e"
    54.                 . "\n LEFT JOIN #__content_frontpage AS f ON f.content_id = a.id"
    55.                 . "\n WHERE a.catid = e.id"
    56.                 . "\n AND ( a.state = '1' AND a.checked_out = '0' AND a.sectionid > '0' )"
    57.                 . "\n AND ( a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '". $now ."' )"
    58.                 . "\n AND ( a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '". $now ."' )"
    59.             . ( $access ? "\n AND a.access <= '". $my->gid ."'" : '' )
    60.                 . ( $catid ? "\n AND ( a.catid IN (". $catid .") )" : '' )
    61.                 . ( $secid ? "\n AND ( a.sectionid IN (". $secid .") )" : '' )
    62.                 . ( $show_front == "0" ? "\n AND f.content_id IS NULL" : '' )
    63.                 . ( $show_front == "2" ? "\n AND f.content_id IS NOT NULL" : '' )
    64.                 . "\n ORDER BY a.created DESC LIMIT $count"
    65.                 ;
    66.                 $database->setQuery( $query );
    67.                 $rows = $database->loadObjectList();
    68.                 break;
    69.        
    70. }
     
  7. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Ошибка модуля mod_latestnews, строка 124

    А echo $database->stderr(); что-нибудь напечатало?
     
  8. Offline

    ravik Недавно здесь

    Регистрация:
    12.12.2007
    Сообщения:
    5
    Симпатии:
    0
    Ответ: Ошибка модуля mod_latestnews, строка 124


    Вызов DB функции завершен с ошибкой номер: 1054
    Unknown column 'a.id' in 'on clause' SQL=SELECT a.id, a.title, a.sectionid, a.catid, a.introtext, a.created, e.title AS cattitle, a.created as created2 FROM jos_content AS a, jos_categories AS e LEFT JOIN jos_content_frontpage AS f ON f.content_id = a.id WHERE a.catid = e.id AND ( a.state = '1' AND a.checked_out = '0' AND a.sectionid > '0' ) AND ( a.publish_up = '0000-00-00 00:00:00' OR a.publish_up <= '2007-12-25 22:23' ) AND ( a.publish_down = '0000-00-00 00:00:00' OR a.publish_down >= '2007-12-25 22:23' ) AND a.access <= '0' AND ( a.catid IN (21) ) ORDER BY a.created DESC LIMIT 5
     
  9. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Ошибка модуля mod_latestnews, строка 124

    Ну теперь вспоминай, что делал с таблицами, с дампами. Переносил или двигал. Куда целый столбец делся.
     
  10. Offline

    ravik Недавно здесь

    Регистрация:
    12.12.2007
    Сообщения:
    5
    Симпатии:
    0
    Ответ: Ошибка модуля mod_latestnews, строка 124

    собственно проблема появилась после того, как хостер произвел апгрейд. вроде и резервное копирование было сделано и все остальное, однако после восстановления модуль стал вести себя именно так.

    что можно предпринять для восстановления?

    ps
    очень признателен за помощь! с наступающими новогодними праздниками!
     
  11. Dead Krolik
    Offline

    Dead Krolik специалист

    Регистрация:
    13.04.2007
    Сообщения:
    3 688
    Симпатии:
    101
    Пол:
    Мужской
    Ответ: Ошибка модуля mod_latestnews, строка 124

    Это не модуль виноват. Виновата попорченная база данных. Чего с ней делать без бэкапа - я не знаю :(
     

Поделиться этой страницей

Загрузка...