Contao-Camp 2024
Ergebnis 1 bis 6 von 6

Thema: Tabcontrol - Fehlermeldung nach Umstellung auf PHP7.2

  1. #1
    Contao-Fan
    Registriert seit
    26.09.2012.
    Beiträge
    271

    Standard Tabcontrol - Fehlermeldung nach Umstellung auf PHP7.2

    Hallo.

    Ich passe gerade eine Seite auf PHP 7.2 an.
    Nach einem Update von Contao auf 3.5.36 bekomme ich immer folgende Fehlermeldung, wenn ich die Erweiterung Tabcontrol in den Einstellungen wieder aktiviere:

    Code:
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count(NULL)
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: Cannot modify header information - headers already sent by (output started at /home/www/web194.s163.goserver.host/siebenhof/system/helper/functions.php:65) in system/modules/core/library/Contao/Template.php on line 294
    
    #0 [internal function]: __error(2, 'Cannot modify h...', '/home/www/web19...', 294, Array)
    #1 system/modules/core/library/Contao/Template.php(294): header('Vary: User-Agen...', false)
    #2 system/modules/core/classes/FrontendTemplate.php(121): Contao\Template->output()
    #3 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #4 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #5 index.php(20): Contao\FrontendIndex->run()
    #6 {main}
    
    
    Warning: Cannot modify header information - headers already sent by (output started at /home/www/web194.s163.goserver.host/siebenhof/system/helper/functions.php:65) in system/modules/core/library/Contao/Template.php on line 295
    
    #0 [internal function]: __error(2, 'Cannot modify h...', '/home/www/web19...', 295, Array)
    #1 system/modules/core/library/Contao/Template.php(295): header('Content-Type: t...')
    #2 system/modules/core/classes/FrontendTemplate.php(121): Contao\Template->output()
    #3 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #4 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #5 index.php(20): Contao\FrontendIndex->run()
    #6 {main}
    Mir sagt die Fehlermeldung leider gar nichts. Was könnte das bedeuten?

  2. #2
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.942

    Standard

    Zitat Zitat von damac Beitrag anzeigen
    Mir sagt die Fehlermeldung leider gar nichts. Was könnte das bedeuten?
    Die Fehlermeldung sagt, daß Du count() (steht in Zeile 41 von ContentTabControl.php (https://github.com/christianbarkowsk...ontrol.php#L41) auf etwas anwendest, das kein array und auch nichts ist, das Countable implementiert.

    So weit, so technisch :-o

    In der Zeile 41 wird count() das übergeben, was zuvor mittels
    PHP-Code:
    $classes deserialize($this->tabClasses); 
    ausgelesen wird. deserialize sollte einen Array erzeugen -- außer die übergebenen Daten sind "leer".

    Hast Du also in Deinem Inhaltselement unter "tabClasses" etwas eingetragen/ausgewählt?
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  3. #3
    Contao-Fan
    Registriert seit
    26.09.2012.
    Beiträge
    271

    Standard

    Ja, die Einstellungen wurden nicht übernommen. Ich habe sie jetzt noch mal eingefügt.

    Leider aber immer noch die Fehlermeldung - nun auch im Backend

    Code:
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count('')
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count('')
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count('')
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: count(): Parameter must be an array or an object that implements Countable in system/modules/tabcontrol/elements/ContentTabControl.php on line 41
    
    #0 [internal function]: __error(2, 'count(): Parame...', '/home/www/web19...', 41, Array)
    #1 system/modules/tabcontrol/elements/ContentTabControl.php(41): count('')
    #2 system/modules/core/elements/ContentElement.php(265): Contao\ContentTabControl->compile()
    #3 system/modules/core/library/Contao/Controller.php(484): Contao\ContentElement->generate()
    #4 system/modules/core/modules/ModuleArticle.php(213): Contao\Controller::getContentElement(Object(Contao\ContentModel), 'main')
    #5 system/modules/core/modules/Module.php(287): Contao\ModuleArticle->compile()
    #6 system/modules/core/modules/ModuleArticle.php(67): Contao\Module->generate()
    #7 system/modules/core/library/Contao/Controller.php(417): Contao\ModuleArticle->generate(false)
    #8 system/modules/core/library/Contao/Controller.php(277): Contao\Controller::getArticle(Object(Contao\ArticleModel), false, false, 'main')
    #9 system/modules/core/pages/PageRegular.php(133): Contao\Controller::getFrontendModule('0', 'main')
    #10 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #11 index.php(20): Contao\FrontendIndex->run()
    #12 {main}
    
    
    Warning: Cannot modify header information - headers already sent by (output started at /home/www/web194.s163.goserver.host/siebenhof/system/helper/functions.php:65) in system/modules/core/library/Contao/Template.php on line 294
    
    #0 [internal function]: __error(2, 'Cannot modify h...', '/home/www/web19...', 294, Array)
    #1 system/modules/core/library/Contao/Template.php(294): header('Vary: User-Agen...', false)
    #2 system/modules/core/classes/FrontendTemplate.php(121): Contao\Template->output()
    #3 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #4 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #5 index.php(20): Contao\FrontendIndex->run()
    #6 {main}
    
    
    Warning: Cannot modify header information - headers already sent by (output started at /home/www/web194.s163.goserver.host/siebenhof/system/helper/functions.php:65) in system/modules/core/library/Contao/Template.php on line 295
    
    #0 [internal function]: __error(2, 'Cannot modify h...', '/home/www/web19...', 295, Array)
    #1 system/modules/core/library/Contao/Template.php(295): header('Content-Type: t...')
    #2 system/modules/core/classes/FrontendTemplate.php(121): Contao\Template->output()
    #3 system/modules/core/pages/PageRegular.php(190): Contao\FrontendTemplate->output(true)
    #4 system/modules/core/controllers/FrontendIndex.php(285): Contao\PageRegular->generate(Object(Contao\PageModel), true)
    #5 index.php(20): Contao\FrontendIndex->run()

  4. #4
    Contao-Urgestein Avatar von cliffparnitzky
    Registriert seit
    08.10.2010.
    Ort
    Lüneburg
    Beiträge
    2.450
    User beschenken
    Wunschliste
    Contao-Projekt unterstützen

    Support Contao

  5. #5
    Contao-Fan Avatar von Fehrmann
    Registriert seit
    04.07.2009.
    Ort
    Wismar
    Beiträge
    580
    Contao-Projekt unterstützen

    Support Contao

    Standard

    Hinweis:

    Code:
    $classes = deserialize($this->tabClasses, true);
    gibt auf jeden Fall ein Array zurück (gegebenenfalls eben leer).

    Vielleicht hilft das schon.
    Software-Entwickler Backend/Frontend

  6. #6
    Contao-Nutzer
    Registriert seit
    05.08.2011.
    Beiträge
    2

    Standard Perfekt - Funktioniert!

    Zitat Zitat von Fehrmann Beitrag anzeigen
    Hinweis:

    Code:
    $classes = deserialize($this->tabClasses, true);
    gibt auf jeden Fall ein Array zurück (gegebenenfalls eben leer).

    Vielleicht hilft das schon.
    Ist zwar schon etwas älter, hat mir aber bei einem älteren Projekt gerade sehr geholfen.
    Vielen Dank.
    b2i

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •