Форум русской поддержки Joomla!® CMS
03.12.2016, 15:42:18 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
   
   Начало   Поиск Joomla 3.0 FAQ Joomla 2.5 FAQ Joomla 1.5 FAQ Правила форума Новости Joomla Реклама Войти Регистрация Помощь  
Страниц: [1]   Вниз
  Добавить закладку  |  Печать  
Автор

Танцы с бубном и переустановка компонентk

 (Прочитано 1559 раз)
0 Пользователей и 1 Гость смотрят эту тему.
intuitive
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 20


« : 20.08.2014, 16:13:28 »

Ребят, такое дело, подскажите. (Сразу хочу сказать, что прочитал ряд схожих тем и выполнил рекомендации, но, видать, случай особый или руки не из того места Azn)
Решил я удалить компонент sh404SEF...

Во время удаления (как требуется: деинсталляция через управление расширениями) что-то не срослось, ошибку не запомнил, в итоге не смог заново поставить его обратно: завершается 100% установки и выплёвывает:
Fatal error: Class 'ShlDbHelper' not found in ***/public_html/tmp/install_53f48c89e1f82/installation.script.php on line 267

Нужно-таки по-человечески удалить, подумал я, и последовательно вынес:
папку /administrator/components/sh404SEF
папку /components/sh404SEF
папки /plugins и /plugins/system не содержали ничего относящегося к sh404
Из БД вынес таблицы:
_sh404sef_aliases
_sh404sef_metas
_sh404sef_pageids
_sh404sef_urls


Далее нашел все упоминания sh404 и вынес записи из

_assets 1 запись
_extensions 1 запись
_menu 9 записей

Смотрю в админке Joomla - все чисто, никакого sh404. Начинаю переустанавливать. Доходит до 100% - Fatal error: Class 'ShlDbHelper' not found in ***/public_html/tmp/install_53f48c89e1f82/installation.script.php on line 267 и привет.

Компонент появляется, но при нажатии на него страница с сообщением
sh404SEF system plugin has b een disabled or has failed initializing. Please enable it again to use sh404SEF, with Joomla! plugin manager и привет.
Плагинов от sh404 в списке нет.

Буду признателен за какие-нибудь идеи - как заставить переустановиться компонент.

На борту:
Joomla 3.3.1
sh404SEF v4.4.4
PHP 5.3

Записан
Тренд
Осваиваюсь на форуме
***

Репутация: +6/-0
Offline Offline

Сообщений: 42


« Ответ #1 : 20.08.2014, 16:38:54 »

Я так понял, что привычки делать бекап сайта перед установкой, удалением и обновлением нет?
Насчет вычищения... надо еще и кеш почистить, там тоже всякое может сохраниться. Ну и папочку tmp, можно целиком очистить кроме index.html
Ну если и это не помогает, залезаем в эти файлы, перемещаемся на указанные строки и смотрим что там требуется.
Записан
intuitive
Захожу иногда
**

Репутация: +0/-0
Offline Offline

Сообщений: 20


« Ответ #2 : 20.08.2014, 16:43:35 »

Я так понял, что привычки делать бекап сайта перед установкой, удалением и обновлением нет?
В точку Sad
Кэш постоянно чищу. Полез в файлы.

Цитировать
      // read saved config
         $extFile = $this->_preserveConfigFolder . 'sh404_upgrade_conf' . '/com_sh404sef_' . $this->_siteId . '.php';
         
         // remove previous if any
         if (JFile::exists($extFile))
         {
            include_once $extFile;
            if(!empty($sh404sefConfig))
            {
               // write it back into sh404SEF config field
               try {
                  ShlDbHelper::update('#__extensions', array('params' => $sh404sefConfig), array('type' => 'component', 'element' => 'com_sh404sef'));
               }
               catch (Exception $e)
               {
                  JFactory::getApplication()
                  ->enqueuemessage('Database error while restoring saved configuration. Config may be lost: ' . $e->getMessage());
               }
            }
         }

      }

Выделил 267 строчку.
Как я понял, если очень грубо : "Скрипт ищет то, что не удалено, если находит, удаляет, а в моем случае нет того, что нужно удалить"  ! Shocked
« Последнее редактирование: 20.08.2014, 16:52:30 от intuitive » Записан
Тренд
Осваиваюсь на форуме
***

Репутация: +6/-0
Offline Offline

Сообщений: 42


« Ответ #3 : 20.08.2014, 17:04:29 »

Попробуй вывести что содержится в переменной $extFile
      // read saved config
         $extFile = $this->_preserveConfigFolder . 'sh404_upgrade_conf' . '/com_sh404sef_' . $this->_siteId . '.php';
print "extFile = $extFile";
потом после подключения файла посмотреть что содержит переменная $sh404sefConfig
скорее всего это будет массив и надо его просмотреть print_r($sh404sefConfig)
там скорее всего какой-то параметр кривой... надо его найти.
Записан
deepsky303
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 6


« Ответ #4 : 09.06.2015, 18:54:12 »

Если вдруг кто столкнётся с этой же ошибкой, то вот решение :

1. Удалить записи, связанные с sh404SEF из таблиц БД вашего сайта
 
 _assets
 _extensions
 _menu

для кучи ещё две таблицы shlib.

2. После этого удалить все папки связанные с sh404SEF из :

administrator/components/
administrator/modules/
media/
plugins/
plugins/system/
components/

3. Очистить папку tmp.

После этого компонент установился без вопросов.
Записан
Страниц: [1]   Вверх
  Добавить закладку  |  Печать  
 
Перейти в:  

Powered by SMF 1.1.21 | SMF © 2006, Simple Machines

Joomlaforum.ru is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla! name and logo is used under a limited license granted by Open Source Matters
the trademark holder in the United States and other countries.

LiveInternet