Ergebnis 1 bis 6 von 6

Thema: Internal Server Error - Minikalender AJAX Monatswechsel

  1. #1
    Contao-Nutzer
    Registriert seit
    23.01.2011.
    Beiträge
    27

    Standard Internal Server Error - Minikalender AJAX Monatswechsel

    Hi!

    Ich will im Minikalender den Monatswechsel via AJAX durchführen. Dazu hab ich die AJAX Erweiterung von Andreas Schempp installiert und das Mootools Script auf jQuery adaptiert.

    Code:
    $(document).ready(function(){
        $('.currentMonth a').click(function(e){
            e.preventDefault();
        	var month = $(this).prop('href').match('month=[0-9]{6}');
          
          $.ajax({
            type : 'GET',
            dataType : 'html',
            data:'action=fmd&id=7&' + month,
            url:'ajax.php'
          }).done(function(data){
            console.log(data);
          	$('.mod_calendar').html(data);
          });
        });
      });
    Bei einem Request kommt allerdings ein Internal Server Error in der Firebug Konsole. Lass ich mir irgendeinen anderen Text bei dem Request holen kommt dieser auch zurück.
    In den Logs kommt noch folgender Fehler:

    Code:
    PHP Warning: mb_substr() expects parameter 1 to be string, array given in /homepages/28/d401799080/htdocs/redesign/system/helper/mbstring.php on line 439
    #0 [internal function]: __error(2, 'mb_substr() exp...', '/homepages/28/d...', 439, Array)
    #1 /homepages/28/d401799080/htdocs/redesign/system/helper/mbstring.php(439): mb_substr(Array, 0, '2')
    #2 /homepages/28/d401799080/htdocs/redesign/templates/standart/cal_mini_vs.xhtml(20): utf8_substr(Array, 0, '2')
    #3 /homepages/28/d401799080/htdocs/redesign/system/modules/core/library/Contao/Template.php(255): include('/homepages/28/d...')
    #4 /homepages/28/d401799080/htdocs/redesign/system/modules/core/classes/FrontendTemplate.php(37): Contao\Template->parse()
    #5 /homepages/28/d401799080/htdocs/redesign/system/modules/calendar/modules/ModuleCalendar.php(167): Contao\FrontendTemplate->parse()
    #6 /homepages/28/d401799080/htdocs/redesign/system/modules/core/modules/Module.php(148): Contao\ModuleCalendar->compile()
    #7 /homepages/28/d401799080/htdocs/redesign/system/modules/calendar/modules/ModuleCalendar.php(85): Contao\Module->generate()
    #8 /homepages/28/d401799080/htdocs/redesign/system/modules/core/elements/ContentModule.php(63): Contao\ModuleCalendar->generate()
    #9 /homepages/28/d401799080/htdocs/redesign/system/modules/core/library/Contao/Controller.php(456): Contao\ContentModule->generate()
    #10 /homepages/28/d401799080/htdocs/redesign/system/modules/core/modules/ModuleArticle.php(179): Contao\Controller->getContentElement(Object(Contao\Model\Collection))
    #11 /homepages/28/d401799080/htdocs/redesign/system/modules/core/modules/Module.php(148): Contao\ModuleArticle->compile()
    #12 /homepages/28/d401799080/htdocs/redesign/system/modules/core/modules/ModuleArticle.php(59): Contao\Module->generate()
    #13 /homepages/28/d401799080/htdocs/redesign/system/modules/core/library/Contao/Controller.php(384): Contao\ModuleArticle->generate(false)
    #14 /homepages/28/d401799080/htdocs/redesign/system/modules/core/library/Contao/Controller.php(237): Contao\Controller->getArticle(Object(Contao\Model\Collection), true, false, 'main')
    #15 /homepages/28/d401799080/htdocs/redesign/system/modules/core/pages/PageRegular.php(109): Contao\Controller->getFrontendModule('0', 'main')
    #16 /homepages/28/d401799080/htdocs/redesign/index.php(250): Contao\PageRegular->generate(Object(Contao\PageModel))
    #17 /homepages/28/d401799080/htdocs/redesign/index.php(411): Index->run()
    #18 {main}
    Kann mir da jemand helfen?

    Viele Grüße
    Chris

  2. #2
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    Du bekommst kein html, sondern ein Json zurück. Schau dir das nochmal in dem Gist an.

  3. #3
    Contao-Nutzer
    Registriert seit
    23.01.2011.
    Beiträge
    27

    Standard

    Auch mit type json bzw. dem Mootools Script kommt der Fehler.

  4. #4
    Contao-Fan Avatar von lomex
    Registriert seit
    03.07.2009.
    Ort
    Werne
    Beiträge
    791
    User beschenken
    Wunschliste

    Standard

    Du brauchst auf jedenfall g=1, da du im Kalender keine generateAjax - Methode hast. Match hat bei mir gerade ein Array zurückgeliefert. Warum auch immer.
    Das Snippet hat jedenfalls bei mir funktioniert:

    Code:
    <script>
    $(document).ready(function(){
        $('.mod_calendar .head a').click(function(e){
            e.preventDefault();
            console.log("clicked");
        	var month = $(this).prop('href').match('month=[0-9]{6}');
            console.log(month[0]);
          $.ajax({
            type : 'GET',
            dataType : 'JSON',
            data:'g=1&action=fmd&id=27&' + month[0],
            url:'ajax.php',
          }).success(function(data){
            console.log(data.content);
          	$('.mod_calendar').html(data.content);
          });
        });
      });
    </script>

  5. #5
    Contao-Nutzer Avatar von janosch
    Registriert seit
    06.07.2009.
    Ort
    Wien
    Beiträge
    82

    Standard

    Zitat Zitat von chrizzzdl Beitrag anzeigen
    Auch mit type json bzw. dem Mootools Script kommt der Fehler.
    @chrizzzdl Hast du bis dato den Fehler bzw. eine Lösung gefunden? Habe im Moment das selbe Problem
    Why is 6 afraid of 7? Because 7 8 9.

  6. #6
    Contao-Fan
    Registriert seit
    22.10.2009.
    Beiträge
    293

    Standard

    Hallo,

    ich habe zwar hier im Forum Scripte gefunden, die den Kalender per Ajax aktualisieren, aber die sind wohl auf Mootools ausgerichtet. Ist es schon jemandem gelungen, das ganze mit jQuery zu lösen?

    Gruß,
    Ignatz

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
  •