Internal server error when try to open the Gestion app
Closed this issue · 10 comments
Describe the bug
Internal server error when try to open the Gestion app
To Reproduce
Steps to reproduce the behavior:
- Updated Gestion to current version 2.5.1
- Click on Gestion App
- See error "internal server error"
Desktop :
- OS: Windows 10
- Browser firefox
- Version 126.0 64bit
Additional context
I use a shared webhosting on allinkl.com (professional)
Nextcloud Hub 8 (29.0.0)
Linux 5.4.0-181-generic x86_64
PHP 8.2.18
some content from the logfile:
TableNotFoundException An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'xxxxx.oc_gestion_conf_share' doesn't exist
Undefined variable $prop at /www/htdocs/xxxxx/nextcloud/apps/gestion/lib/Controller/PageController.php#97
Creation of dynamic property OCA\Gestion\Settings\GestionAdmin::$idNextcloud is deprecated at /www/htdocs/xxxxx/nextcloud/apps/gestion/lib/Settings/GestionAdmin.php#26
Edit: After deinstall and new install: still same problem
is it better with 2.6.1 ?
I have the same problem with 2.6.2
is it on the same share webhosting ?
is it on the same share webhosting ?
No, I'm using a Nextcloud hosting service.
It's complicated for me to reproduced. could you provide me access to your instance ?
It's complicated for me to reproduced. could you provide me access to your instance ?
I'm sorry, that's not possible in my case. I will try to access the logs.
The installation works without problems, but after I click on the Gestion icon I instantly get an internal server error.
I have copied the technical details, that might help you.
Technische Details
Entfernte Adresse: [confidential]
Anfragekennung: [confidential]
Typ: Doctrine\DBAL\Exception\TableNotFoundException
Code: 1146
Nachricht: An exception occurred while executing a query: SQLSTATE[42S02]: Base table or view not found: 1146 Table '[confidential]_oc.oc_gestion_conf_share' doesn't exist
Datei: [confidential]/public_html/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php
Zeile: 49
Trace
#0 [confidential]/public_html/3rdparty/doctrine/dbal/src/Connection.php(1943): Doctrine\DBAL\Driver\API\MySQL\ExceptionConverter->convert()
#1 [confidential]/public_html/3rdparty/doctrine/dbal/src/Connection.php(1885): Doctrine\DBAL\Connection->handleDriverException()
#2 [confidential]/public_html/3rdparty/doctrine/dbal/src/Statement.php(194): Doctrine\DBAL\Connection->convertExceptionDuringQuery()
#3 [confidential]/public_html/lib/private/DB/PreparedStatement.php(86): Doctrine\DBAL\Statement->execute()
#4 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(426): OC\DB\PreparedStatement->execute()
#5 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(31): OCA\Gestion\Db\Bdd->execSQLNoJsonReturn()
#6 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(316): OCA\Gestion\Db\Bdd->getCompaniesList()
#7 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(99): OCA\Gestion\Controller\PageController->getCompaniesList()
#8 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(232): OCA\Gestion\Controller\PageController->index()
#9 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(138): OC\AppFramework\Http\Dispatcher->executeController()
#10 [confidential]/public_html/lib/private/AppFramework/App.php(184): OC\AppFramework\Http\Dispatcher->dispatch()
#11 [confidential]/public_html/lib/private/Route/Router.php(338): OC\AppFramework\App::main()
#12 [confidential]/public_html/lib/base.php(1050): OC\Route\Router->match()
#13 [confidential]/public_html/index.php(49): OC::handleRequest()
#14 {main}
Vorige
#0 [confidential]/public_html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php(132): Doctrine\DBAL\Driver\PDO\Exception::new()
#1 [confidential]/public_html/3rdparty/doctrine/dbal/src/Statement.php(190): Doctrine\DBAL\Driver\PDO\Statement->execute()
#2 [confidential]/public_html/lib/private/DB/PreparedStatement.php(86): Doctrine\DBAL\Statement->execute()
#3 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(426): OC\DB\PreparedStatement->execute()
#4 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(31): OCA\Gestion\Db\Bdd->execSQLNoJsonReturn()
#5 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(316): OCA\Gestion\Db\Bdd->getCompaniesList()
#6 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(99): OCA\Gestion\Controller\PageController->getCompaniesList()
#7 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(232): OCA\Gestion\Controller\PageController->index()
#8 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(138): OC\AppFramework\Http\Dispatcher->executeController()
#9 [confidential]/public_html/lib/private/AppFramework/App.php(184): OC\AppFramework\Http\Dispatcher->dispatch()
#10 [confidential]/public_html/lib/private/Route/Router.php(338): OC\AppFramework\App::main()
#11 [confidential]/public_html/lib/base.php(1050): OC\Route\Router->match()
#12 [confidential]/public_html/index.php(49): OC::handleRequest()
#13 {main}
Vorige
#0 [confidential]/public_html/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php(130): PDOStatement->execute()
#1 [confidential]/public_html/3rdparty/doctrine/dbal/src/Statement.php(190): Doctrine\DBAL\Driver\PDO\Statement->execute()
#2 [confidential]/public_html/lib/private/DB/PreparedStatement.php(86): Doctrine\DBAL\Statement->execute()
#3 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(426): OC\DB\PreparedStatement->execute()
#4 [confidential]/public_html/apps/gestion/lib/Db/Bdd.php(31): OCA\Gestion\Db\Bdd->execSQLNoJsonReturn()
#5 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(316): OCA\Gestion\Db\Bdd->getCompaniesList()
#6 [confidential]/public_html/apps/gestion/lib/Controller/PageController.php(99): OCA\Gestion\Controller\PageController->getCompaniesList()
#7 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(232): OCA\Gestion\Controller\PageController->index()
#8 [confidential]/public_html/lib/private/AppFramework/Http/Dispatcher.php(138): OC\AppFramework\Http\Dispatcher->executeController()
#9 [confidential]/public_html/lib/private/AppFramework/App.php(184): OC\AppFramework\Http\Dispatcher->dispatch()
#10 [confidential]/public_html/lib/private/Route/Router.php(338): OC\AppFramework\App::main()
#11 [confidential]/public_html/lib/base.php(1050): OC\Route\Router->match()
#12 [confidential]/public_html/index.php(49): OC::handleRequest()
#13 {main}
In https://github.com/baimard/gestion/blob/2.6.2/lib/Db/Bdd.php#L30 I can see that the tablename oc_gestion_conf_share
is hardcoded. I assume, this has to be something like this:
- ... (SELECT id_configuration FROM oc_gestion_conf_share WHERE id_nextcloud = ?)";
+ ... (SELECT id_configuration FROM `".$this->tableprefix."conf_share` WHERE id_nextcloud = ?)";
How my god, you're totaly right !
I will fix that today ! I'm soo sorry !
it's done in 2.6.3