PDA

Zobacz pełną wersję : 500 Unknown column 'a.id'



patryk1990s
29-12-2015, 21:03
Witam,

Mam taki problem bo zainstalowaniu wtyczki RSEvents wyłożył się moduł z dodatkami po wejściu wyświetla mi komunikat:


500 Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM `t7wkv_extensions` AS a LEFT JOIN t7wkv_users AS uc ON uc.id=a.checked_out LEFT JOIN t7wkv_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 401 AND a.id != 402 Unknown column 'a.id' in 'where clause' SQL=SELECT a.extension_id , a.name, a.element, a.folder, a.checked_out, a.checked_out_time, a.enabled, a.access, a.ordering,uc.name AS editor,ag.title AS access_level FROM `t7wkv_extensions` AS a LEFT JOIN t7wkv_users AS uc ON uc.id=a.checked_out LEFT JOIN t7wkv_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 401 AND a.id != 402 ORDER BY `folder` asc,a.ordering ASC LIMIT 0, 20 Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM `t7wkv_extensions` AS a LEFT JOIN t7wkv_users AS uc ON uc.id=a.checked_out LEFT JOIN t7wkv_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 401 AND a.id != 402


Nie bardzo wiem co jest nie tak a przez to brak jest dostępu do zakładki dodatków.
Z góry dziękuję za pomoc.

wojsmol
29-12-2015, 21:55
Jeżeli wykrzaczyło się po instalacji RSEvents to znaczy, że najprawdopodobniej któryś z dodatków RSEvens wykonuje błędne zapytanir. Rozszerzenie jest płatne więc pisz do supportu. Możesz ewentualnie sprawdzić co siedzi w tabeli t7wkv_extensions pod extension_id 401 i 402.

patryk1990s
30-12-2015, 00:17
http://forum.joomla.pl/attachment.php?attachmentid=8539&stc=1

wojsmol
30-12-2015, 00:26
Wyraźniejszą wersję poproszę:)

patryk1990s
30-12-2015, 00:40
http://forum.joomla.pl/attachment.php?attachmentid=8540&stc=1

- - - Updated - - -

https://www.dropbox.com/s/w8uixv5hkbl549d/Bez%C2%A0tytu%C5%82u.png?dl=0 tutaj może lepiej bo coś nie mogę się ogarnąć z tymi screenami :)

Męczę się z tym od jakiegoś czasu a nie mam kopi zapasowej bazy tzn mam ale już z tym błędem.

wojsmol
30-12-2015, 00:51
Zapuść takie zapytanie
SELECT * FROM `t7wkv_extensions` WHERE `type` = 'plugin' AND `element` LIKE '%rs%';

patryk1990s
30-12-2015, 01:10
https://www.dropbox.com/s/w8uixv5hkbl549d/Bez%C2%A0tytu%C5%82u.png?dl=0

Wyskoczyło kilka wyników

wojsmol
30-12-2015, 01:40
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10254';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10257';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10263';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10258';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10267';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10265';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10266';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10264';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10253';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10262';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10261';
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `extension_id` = '10260';wklejasz linia po linii i po każdym zapytaniu sprawdzasz czy działa zarządzanie pluginami. Najbardziej obiecujący jest pierwszy plugin. Oczywiście jeżeli po którymś zapytaniu ruszy to dalszych nie wykonujesz i zapamiętujesz id winowajcy.

patryk1990s
30-12-2015, 01:42
Co dziwne wyświetla drugi moduł RS Form, zainstalowałem oba do formularzy po połączeniu można przeprowadzać rejestrację zgłoszeń. Moduły oba działają ale mimo to nadal jest error w dodatkach do którego nie mam dostępu.

wojsmol
30-12-2015, 01:46
Czyli wszystkie zapytania poszły i nadal error w pluginch?

patryk1990s
30-12-2015, 01:48
Nie pomogło ;\ wyłączyłem wszystkie pokolei i nadal wyświetla error:
https://www.dropbox.com/s/w8uixv5hkbl549d/Bez%C2%A0tytu%C5%82u.png?dl=0

wojsmol
30-12-2015, 01:59
To zmień w zapytaniach enabled z 0 na 1 i o ile posypało się po instalacji produktów od RSJoomla to pisz do nich. Zapłaciłeś też za wsparcie.

patryk1990s
30-12-2015, 02:06
Ok , ale dziękuję za POMOC, miłego wieczoru.

patryk1990s
30-12-2015, 10:01
Po wejściu w zarządzanie wyświetla mi jeszcze taki komunikat.

500 Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM t7wkv_extensions WHERE state=0 AND a.id != 401 AND a.id != 402 Unknown column 'a.id' in 'where clause' SQL=SELECT *,2*protected+(1-protected)*enabled as status FROM t7wkv_extensions WHERE state=0 AND a.id != 401 AND a.id != 402 Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM t7wkv_extensions WHERE state=0 AND a.id != 401 AND a.id != 402

wojsmol
30-12-2015, 11:03
Spróbujmy jeszcze tak
UPDATE `t7wkv_extensions` SET `enabled` = '0' WHERE `type` = 'component' AND `element` LIKE 'com_rsevents%';wyłączamy komponent rsevents

patryk1990s
30-12-2015, 11:57
Wyłączyłem i nad nic wydaje mi się że to nie wina wtyczki bo na developerskim serwerze wtyczka działa.

Jola
30-12-2015, 12:14
Problem polega na błędnym zapytaniu do bazy danych. Tabela #__extensions nie ma kolumny o nazwie id tylko extension_id
Należy zmienić a.id na a.extension_id

patryk1990s
30-12-2015, 12:30
https://www.dropbox.com/s/8ts1tz9cc3uiws0/Zrzut%20ekranu%202015-12-30%20o%2012.28.34.png?dl=0 Tak wygląda tabela extensions u mnie w bazie.

Jola
30-12-2015, 12:34
U mnie też tak wygląda i co w związku z tym?

wojsmol
30-12-2015, 12:47
@Jola Dla mnie pytaniem nie jest co tylko gdzie i dlatego powstał błąd bo w czystej Joomla działa poprawnie. Obstawiam błąd w rozszerzeniach od RS Joomla.

Jola
30-12-2015, 12:54
Tak właśnie jest napisane na początku tego wątku: błąd pojawił się po instalacji RSEvents - w tym rozszerzeniu jest błąd w zapytaniu :)

wojsmol
31-12-2015, 15:07
@Jola Powiem tyle, myliliśmy się co do tego gdzie był byk. Nie mam, jak na razie, zgody od autora tematu na podanie szczegółów.

Creek
04-02-2016, 16:20
@Jola Powiem tyle, myliliśmy się co do tego gdzie był byk. Nie mam, jak na razie, zgody od autora tematu na podanie szczegółów.

A jest szansa, że poda Pan jakieś szczegóły publicznie lub na prv. Zauważyłem, że mam chyba ten sam problem. Bardzo proszę o pomoc.


Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM `joomla323_extensions` AS a LEFT JOIN joomla323_users AS uc ON uc.id=a.checked_out LEFT JOIN joomla323_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 789 Unknown column 'a.id' in 'where clause' SQL=SELECT a.extension_id , a.name, a.element, a.folder, a.checked_out, a.checked_out_time, a.enabled, a.access, a.ordering,uc.name AS editor,ag.title AS access_level FROM `joomla323_extensions` AS a LEFT JOIN joomla323_users AS uc ON uc.id=a.checked_out LEFT JOIN joomla323_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 789 ORDER BY `folder` asc,a.ordering ASC LIMIT 0, 20 Unknown column 'a.id' in 'where clause' SQL=SELECT COUNT(*) FROM `joomla323_extensions` AS a LEFT JOIN joomla323_users AS uc ON uc.id=a.checked_out LEFT JOIN joomla323_viewlevels AS ag ON ag.id = a.access WHERE `type` = 'plugin' AND (a.enabled IN (0, 1)) AND a.state >= 0 AND a.id != 789

wojsmol
04-02-2016, 17:41
Creek (http://forum.joomla.pl/member.php?53730-Creek) Podaj wersje Joomla na której występuje problem.

Creek
04-02-2016, 19:46
Creek (http://forum.joomla.pl/member.php?53730-Creek) Podaj wersje Joomla na której występuje problem.

Joomla! 3.3.6

wojsmol
04-02-2016, 20:43
Creek Pokaż jak wygląda u Ciebie public function getItems() z pliku libraries/legacy/model/list.php - w 3.3.6 powinna ona zaczynać się na linii 155.

Creek
04-02-2016, 22:33
Creek Pokaż jak wygląda u Ciebie public function getItems() z pliku libraries/legacy/model/list.php - w 3.3.6 powinna ona zaczynać się na linii 155.

Tak jest. Była w 155 linii.


/**
* Method to get an array of data items.
*
* @return mixed An array of data items on success, false on failure.
*
* @since 12.2
*/
public function getItems()
{
// Get a storage key.
$store = $this->getStoreId();

// Try to load the data from internal storage.
if (isset($this->cache[$store]))
{
return $this->cache[$store];
}

// Load the list items.
$query = $this->_getListQuery();

try
{
$query->where('a.id != 789'); $items = $this->_getList($query, $this->getStart(), $this->getState('list.limit'));
}
catch (RuntimeException $e)
{
$this->setError($e->getMessage());

return false;
}

// Add the items to the internal cache.
$this->cache[$store] = $items;

return $this->cache[$store];
}

wojsmol
04-02-2016, 22:53
Mamy winowajce
try
{
$query->where('a.id != 789'); $items = $this->_getList($query, $this->getStart(), $this->getState('list.limit'));
}zrób sobie kope tego pliku i podmień funkcję na tą całą funkcję na wersji z Joomla! 3.3.6 https://github.com/joomla/joomla-cms/blob/3.3.6/libraries/legacy/model/list.php#L155-L184. Przed zmianami sprawdź datę modyfikacji pliku oraz co siedzi w tabeli joomla323_extensions pod extension_id równym 789.
// Edit
@Jola W przypadku rozpoczynającym temat była ta sama przyczyna tylko inne id miały być wykluczone z zapytania.

Creek
04-02-2016, 23:20
Mamy winowajce

Zgadza się. Podmiana funkcji wszytko naprawiła. Pod id 789 nie było żadnego rekordu. Plik list.php miał uprawnienia poprawne 644 ale był zmodyfikowany 2 dni temu. Inne pliki z tego katalogu miały daty z 2014 roku.

Bardzo Panu dziękuje za cierpliwość i za rzeczową pomoc.

wojsmol
04-02-2016, 23:29
W takim razie lektura do poduszki - klik (http://www.joomla.pl/o-joomla/joomla-w-praktyce/mam-witryne-w-joomla/postepowanie-po-wlamaniu). Przy tak starej wersji Joomla! nic mnie nie zdziwi.