he seguido las instrucciones de vuestro blog para subir de Joomla 2.5 a 3.3, pero en el panel del back-end me aparece este mensaje de error:
Error
An error has occurred.
1054 Unknown column '' in 'order clause' SQL=SELECT * FROM `i9q25_postinstall_messages` WHERE `extension_id` = '700' AND `enabled` = '1' ORDER BY `` ASC
Return to Control Panel
También he accedido a Extension manager-> Dababase-> Fix, pero no funciona, sigue dando el mismo error.
gracias,
P
URL del sitio: Contenido solo visible a usuarios registrados
Hola Pedro,
No me queda muy claro donde da ese error ¿puedes hacer una captura para que veamos donde se muestra?.
Entiendo que has actualizado a Joomla 3.3.1 ¿correcto?. ¿Trabajas con PHP 5.3?
Saludos
el error sale nada más entrar al back-end. Si le das al botón "Return to control panel" sigue el error ahí. Adjunto la pantalla.
La versión de php que me aparece en el cpanel es 5.3.28
He leído por ahí que estos errores salen cuando, al subir de versión de Joomla (o de una extensión de Joomla), se saltan varias versiones. Digamos que hay cambios en la base de datos que se harían desde la 3.0 a la 3.1, pero si saltas directamente de 3.0 a 3.3, estos cambios en la base de datos no se llegan a hacer. ¿Eso tiene sentido? Si es así, una solución sería actualizar manualmente y paso a paso... ¿no?
Hola Pedro,
En Joomla 3.3.1 ¿te deja ir al Gestor de Extensiones, Base de datos, Reparar?
Entiendo que esta actualización la habrás hecho en una web clonada o previa copia de seguridad ¿correcto?.
Saludos
Hola Pedro,
En que cuenta de cpanel tienes instalada la web Joomla de Contenido solo visible a usuarios registrados?
Saludos
comoquie
Hola,
El error no parece que esté causado por la falta de algún campo en la base de datos, sino porque se está ejecutando desde joomla una consulta que es correcta. Como comentabas el error que te sale es este:
Error
An error has occurred.
1054 Unknown column '' in 'order clause' SQL=SELECT * FROM `i9q25_postinstall_messages` WHERE `extension_id` = '700' AND `enabled` = '1' ORDER BY `` ASC
Return to Control Panel
Si te fijas la consulta SQL pone ORDER BY `` ASC, es decir, se quiere establecer un orden pero no se indica el campo por el cual se quiere ordenar, de ahí el error.
He realizado una búsqueda dentro del código de una web desarrollada con Joomla 3.3.1 y no veo que esa consulta se esté realizando por ningún lado, por lo que no se de donde procede.
Tendrías que descargarte el código de la plantilla y utilizar alguna herramienta como el TextPad o el Sublime Text para ver si encuentras donde se ejecuta la consulta. Tendrías que buscar un texto como _postinstall_messages.
no creo que tenga que ver con la plantilla, porque no he instalado ninguna plantilla de administrador. Tengo únicamente las plantillas Bluestork, Hathor e Isis (bluestork supongo que viene del 2.5). La activada es Isis.
De todas formas, veo que la cadena "_postinstall_messages" sí que me aparece en bastantes archivos:
/administrator/components/com_admin/sql/updates/mysql/3.2.0.sql: /administrator/components/com_admin/sql/updates/mysql/3.2.1.sql:/administrator/components/com_admin/sql/updates/mysql/3.2.2-2014-01-15.sql: /administrator/components/com_admin/sql/updates/postgresql/3.2.0.sql: /administrator/components/com_admin/sql/updates/postgresql/3.2.1.sql: /administrator/components/com_admin/sql/updates/postgresql/3.2.2-2014-01-15.sql: /administrator/components/com_admin/sql/updates/sqlazure/3.2.0.sql: /administrator/components/com_admin/sql/updates/sqlazure/3.2.1.sql: /administrator/components/com_admin/sql/updates/sqlazure/3.2.2-2014-01-15.sql: /administrator/components/com_postinstall/models/messages.php: /administrator/components/com_postinstall/toolbar.php: /administrator/language/en-GB/en-GB.com_postinstall.ini: /logs/joomla_update.php:
Hola,
Dentro de estos archivos donde comentas que has encontrado la cadena "_postinstall_messages" tendrías que revisarlos uno a uno para ver si en alguno de ellos encuentras una consulta SQL como la que te está saliendo en el error.
La mayoría son CREATE TABLE, DELETE o INSERT INTO. Solo hay 3 SELECT, pero ninguna se parece a la del mensaje de error. Ninguna es "select *", con el asterisco.
También he buscado la cadena "_postinstall_messages" dentro de la base de datos (como contenido de algún campo). He buscado ahí por si alguna tabla almacenara sentencias sql por algún motivo, pero tampoco.
Hola Pedro
No podrás encontrar la consulta select tal como se muestra por que esta se construye en modo de ejecución de PHP
Busca una cadena como : `#__postinstall_messages`
Al buscar en mi Joomla de prueba no encontre selects, pero la creación de la tabla debe servirte, asegurate de que en esta tabla tengas los campos señalados en el create, de esta forma si que debería recuperarte el order by con el campo.
CREATE TABLE `#__postinstall_messages` ( `postinstall_message_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `extension_id` bigint(20) NOT NULL DEFAULT '700' COMMENT 'FK to #__extensions', `title_key` varchar(255) NOT NULL DEFAULT '' COMMENT 'Lang key for the title', `description_key` varchar(255) NOT NULL DEFAULT '' COMMENT 'Lang key for description', `action_key` varchar(255) NOT NULL DEFAULT '', `language_extension` varchar(255) NOT NULL DEFAULT 'com_postinstall' COMMENT 'Extension holding lang keys', `language_client_id` tinyint(3) NOT NULL DEFAULT '1', `type` varchar(10) NOT NULL DEFAULT 'link' COMMENT 'Message type - message, link, action', `action_file` varchar(255) DEFAULT '' COMMENT 'RAD URI to the PHP file containing action method', `action` varchar(255) DEFAULT '' COMMENT 'Action method name or URL', `condition_file` varchar(255) DEFAULT NULL COMMENT 'RAD URI to file holding display condition method', `condition_method` varchar(255) DEFAULT NULL COMMENT 'Display condition method, must return boolean', `version_introduced` varchar(50) NOT NULL DEFAULT '3.2.0' COMMENT 'Version when this message was introduced', `enabled` tinyint(3) NOT NULL DEFAULT '1', PRIMARY KEY (`postinstall_message_id`) ) DEFAULT CHARSET=utf8;
Saludos.
he comparado la tabla postinstall_messages con la misma tabla de otro joomla 3, y las estructuras son idénticas. Tienen los mismos campos:
postinstall_message_id extension_id title_key description_key action_key language_extension language_client_id type action_file action condition_file condition_method version_introduced enabled
No sé dónde más mirar. En el mensaje anterior os puse que había tres select, pero no es cierto; aparece la palabra select dentro de otras instrucciones sql (como insert).
Searching 7296 files for " __postinstall_messages" 0 matches across 0 files Searching 7296 files for "_postinstall_messages" /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/mysql/3.2.0.sql: 34 ALTER TABLE `#__modules` ADD COLUMN `asset_id` INT(10) UNSIGNED NOT NULL DEFAULT '0' COMMENT 'FK to the #__assets table.' AFTER `id`; 35 36: CREATE TABLE `#__postinstall_messages` ( 37 `postinstall_message_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, 38 `extension_id` bigint(20) NOT NULL DEFAULT '700' COMMENT 'FK to #__extensions', .. 52 ) DEFAULT CHARSET=utf8; 53 54: INSERT INTO `#__postinstall_messages` (`extension_id`, `title_key`, `description_key`, `action_key`, `language_extension`, `language_client_id`, `type`, `action_file`, `action`, `condition_file`, `condition_method`, `version_introduced`, `enabled`) VALUES 55 (700, 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_TITLE', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_BODY', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_ACTION', 'plg_twofactorauth_totp', 1, 'action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_condition', '3.2.0', 1), 56 (700, 'COM_CPANEL_MSG_EACCELERATOR_TITLE', 'COM_CPANEL_MSG_EACCELERATOR_BODY', 'COM_CPANEL_MSG_EACCELERATOR_BUTTON', 'com_cpanel', 1, 'action', 'admin://components/com_admin/postinstall/eaccelerator.php', 'admin_postinstall_eaccelerator_action', 'admin://components/com_admin/postinstall/eaccelerator.php', 'admin_postinstall_eaccelerator_condition', '3.2.0', 1); /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/mysql/3.2.1.sql: 1: DELETE FROM `#__postinstall_messages` WHERE `title_key` = 'PLG_USER_JOOMLA_POSTINSTALL_STRONGPW_TITLE'; 2 /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/mysql/3.2.2-2014-01-15.sql: 1: INSERT INTO `#__postinstall_messages` (`extension_id`, `title_key`, `description_key`, `action_key`, `language_extension`, `language_client_id`, `type`, `action_file`, `action`, `condition_file`, `condition_method`, `version_introduced`, `enabled`) VALUES 2 (700, 'COM_CPANEL_MSG_PHPVERSION_TITLE', 'COM_CPANEL_MSG_PHPVERSION_BODY', '', 'com_cpanel', 1, 'message', '', '', 'admin://components/com_admin/postinstall/phpversion.php', 'admin_postinstall_phpversion_condition', '3.2.2', 1); 3 /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/postgresql/3.2.0.sql: 34 ALTER TABLE "#__modules" ADD COLUMN "asset_id" bigint DEFAULT 0 NOT NULL; 35 36: CREATE TABLE "#__postinstall_messages" ( 37 "postinstall_message_id" serial NOT NULL, 38 "extension_id" bigint NOT NULL DEFAULT 700, .. 52 ); 53 54: COMMENT ON COLUMN "#__postinstall_messages"."extension_id" IS 'FK to jos_extensions'; 55: COMMENT ON COLUMN "#__postinstall_messages"."title_key" IS 'Lang key for the title'; 56: COMMENT ON COLUMN "#__postinstall_messages"."description_key" IS 'Lang key for description'; 57: COMMENT ON COLUMN "#__postinstall_messages"."language_extension" IS 'Extension holding lang keys'; 58: COMMENT ON COLUMN "#__postinstall_messages"."type" IS 'Message type - message, link, action'; 59: COMMENT ON COLUMN "#__postinstall_messages"."action_file" IS 'RAD URI to the PHP file containing action method'; 60: COMMENT ON COLUMN "#__postinstall_messages"."action" IS 'Action method name or URL'; 61: COMMENT ON COLUMN "#__postinstall_messages"."condition_file" IS 'RAD URI to file holding display condition method'; 62: COMMENT ON COLUMN "#__postinstall_messages"."condition_method" IS 'Display condition method, must return boolean'; 63: COMMENT ON COLUMN "#__postinstall_messages"."version_introduced" IS 'Version when this message was introduced'; 64 65: INSERT INTO "#__postinstall_messages" ("extension_id", "title_key", "description_key", "action_key", "language_extension", "language_client_id", "type", "action_file", "action", "condition_file", "condition_method", "version_introduced", "enabled") VALUES 66 (700, 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_TITLE', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_BODY', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_ACTION', 'plg_twofactorauth_totp', 1, 'action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_condition', '3.2.0', 1), 67 (700, 'COM_CPANEL_MSG_EACCELERATOR_TITLE', 'COM_CPANEL_MSG_EACCELERATOR_BODY', 'COM_CPANEL_MSG_EACCELERATOR_BUTTON', 'com_cpanel', 1, 'action', 'admin://components/com_admin/postinstall/eaccelerator.php', 'admin_postinstall_eaccelerator_action', 'admin://components/com_admin/postinstall/eaccelerator.php', 'admin_postinstall_eaccelerator_condition', '3.2.0', 1); /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/postgresql/3.2.1.sql: 1: DELETE FROM "#__postinstall_messages" WHERE "title_key" = 'PLG_USER_JOOMLA_POSTINSTALL_STRONGPW_TITLE'; 2 /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/postgresql/3.2.2-2014-01-15.sql: 1: INSERT INTO "#__postinstall_messages" ("extension_id", "title_key", "description_key", "action_key", "language_extension", "language_client_id", "type", "action_file", "action", "condition_file", "condition_method", "version_introduced", "enabled") VALUES 2 (700, 'COM_CPANEL_MSG_PHPVERSION_TITLE', 'COM_CPANEL_MSG_PHPVERSION_BODY', '', 'com_cpanel', 1, 'message', '', '', 'admin://components/com_admin/postinstall/phpversion.php', 'admin_postinstall_phpversion_condition', '3.2.2', 1); 3 /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/sqlazure/3.2.0.sql: 48 ALTER TABLE [#__modules] ADD [asset_id] [bigint] NOT NULL DEFAULT 0; 49 50: CREATE TABLE [#__postinstall_messages] ( 51 [postinstall_message_id] [bigint] IDENTITY(1,1) NOT NULL, 52 [extension_id] [bigint] NOT NULL DEFAULT 700, .. 69 ) ON [PRIMARY]; 70 71: INSERT INTO [#__postinstall_messages] ([extension_id], [title_key], [description_key], [action_key], [language_extension], [language_client_id], [type], [action_file], [action], [condition_file], [condition_method], [version_introduced], [enabled]) 72 SELECT 700, 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_TITLE', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_BODY', 'PLG_TWOFACTORAUTH_TOTP_POSTINSTALL_ACTION', 'plg_twofactorauth_totp', 1, 'action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_action', 'site://plugins/twofactorauth/totp/postinstall/actions.php', 'twofactorauth_postinstall_condition', '3.2.0', 1 73 UNION ALL /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/sqlazure/3.2.1.sql: 1: DELETE FROM [#__postinstall_messages] WHERE [title_key] = 'PLG_USER_JOOMLA_POSTINSTALL_STRONGPW_TITLE'; 2 /Users/pedroparadis/Downloads/administrator/administrator/components/com_admin/sql/updates/sqlazure/3.2.2-2014-01-15.sql: 1: INSERT INTO [#__postinstall_messages] ([extension_id], [title_key], [description_key], [action_key], [language_extension], [language_client_id], [type], [action_file], [action], [condition_file], [condition_method], [version_introduced], [enabled]) 2 SELECT 700, 'COM_CPANEL_MSG_PHPVERSION_TITLE', 'COM_CPANEL_MSG_PHPVERSION_BODY', '', 'com_cpanel', 1, 'message', '', '', 'admin://components/com_admin/postinstall/phpversion.php', 'admin_postinstall_phpversion_condition', '3.2.2', 1; 3 /Users/pedroparadis/Downloads/administrator/administrator/components/com_postinstall/models/messages.php: 102 103 $query = $db->getQuery(true) 104: ->update($db->qn('#__postinstall_messages')) 105 ->set($db->qn('enabled') . ' = ' . $db->q(1)) 106 ->where($db->qn('extension_id') . ' = ' . $db->q($eid)); /Users/pedroparadis/Downloads/administrator/administrator/components/com_postinstall/toolbar.php: 38 } 39 40: JToolBarHelper::title(JText::sprintf('COM_POSTINSTALL_MESSAGES_TITLE', $extension_name)); 41 JToolBarHelper::preferences($this->config['option'], 550, 875); 42 JToolbarHelper::help('JHELP_COMPONENTS_POST_INSTALLATION_MESSAGES'); /Users/pedroparadis/Downloads/administrator/administrator/language/en-GB/en-GB.com_postinstall.ini: 13 COM_POSTINSTALL_LBL_RELEASENEWS="Release news (from Joomla.org)" 14 COM_POSTINSTALL_LBL_SINCEVERSION="Since version %s" 15: COM_POSTINSTALL_MESSAGES_TITLE="Post-installation Messages for %s" 16 COM_POSTINSTALL_TITLE_JOOMLA="Joomla!" 17 COM_POSTINSTALL_XML_DESCRIPTION="Displays post-installation and post-upgrade messages for Joomla! and its extensions" /Users/pedroparadis/Downloads/administrator/logs/joomla_update.php: 152 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: INSERT INTO `#__menu` (`menutype`, `title`, `alias`, `note`, `path`, `link`, `ty. 153 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: ALTER TABLE `#__modules` ADD COLUMN `asset_id` INT(10) UNSIGNED NOT NULL DEFAULT. 154: 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: CREATE TABLE `#__postinstall_messages` ( `postinstall_message_id` bigint(20) u. 155: 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: INSERT INTO `#__postinstall_messages` (`extension_id`, `title_key`, `description. 156 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: CREATE TABLE IF NOT EXISTS `#__ucm_history` ( `version_id` int(10) unsigned NO. 157 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: ALTER TABLE `#__users` ADD COLUMN `otpKey` varchar(1000) NOT NULL DEFAULT '' COM. ... 159 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: CREATE TABLE IF NOT EXISTS `#__user_keys` ( `id` int(10) unsigned NOT NULL AUT. 160 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.0. Query text: /* Update bad params for two cpanel modules */ UPDATE `#__modules` SET `params`. 161: 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.1. Query text: DELETE FROM `#__postinstall_messages` WHERE `title_key` = 'PLG_USER_JOOMLA_POSTI. 162 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2013-12-22. Query text: ALTER TABLE `#__update_sites` ADD COLUMN `extra_query` VARCHAR(1000) DEFAULT '';. 163 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2013-12-22. Query text: ALTER TABLE `#__updates` ADD COLUMN `extra_query` VARCHAR(1000) DEFAULT '';. 164 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2013-12-28. Query text: UPDATE `#__menu` SET `component_id` = (SELECT `extension_id` FROM `#__extensions. 165 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2014-01-08. Query text: INSERT INTO `#__extensions` (`extension_id`, `name`, `type`, `element`, `folder`. 166: 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2014-01-15. Query text: INSERT INTO `#__postinstall_messages` (`extension_id`, `title_key`, `description. 167 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2014-01-18. Query text: /* Update updates version length */ ALTER TABLE `#__updates` MODIFY `version` va. 168 2014-06-22T16:17:42+00:00 INFO update Ran query from file 3.2.2-2014-01-23. Query text: INSERT INTO `#__extensions` (`extension_id`, `name`, `type`, `element`, `folder`. 29 matches across 13 files
Hola Pedro
Lo que podrías probar hacer es bajarte un pack de actualización de Joomla 3 e instalar el parche de actualización manualmente, es decir como ya estas en Joomla 3 busca un parche por ejemplo de Joomla 3.1 a Joomla 3.3 y luego instala manualamente.
Otra opcioń es que esperes la nueva versión de Joomla 3 y hagas la actualización para verificar si te sigue saliendo el mismo mensaje.
Saludos.