Fehlerhafte Darstellung von Terminen

Hast du einen Fehler in der aktuellen Version gefunden ? Diesen kannst du uns hier mitteilen und uns bei der Fehlersuche helfen.
Antworten
bettes
Beiträge: 65
Registriert: 12. Mai 2008, 23:33
Kontaktdaten:

Fehlerhafte Darstellung von Terminen

Beitrag von bettes »

Im Rahmen der Umstellung auf die neue Version musste ich ein älteres Backup einspielen, welches auf einem anderen Server mit dem Zeichensatz latin lief. Dadurch gab es natürlich Problem mit den Umlauten. Also habe ich die Daten tabellenweiser wieder exportiert, die Umlaute korrigiert und wieder importiert.

Das hat bei den Ankündigungen auch ganz gut funktioniert. Jedoch habe ich bei der Terminverwaltung das Problem, dass nun alle Termine - auch die zukünftigen - unter vergangene Termine angezeigt werden.

Gibt es ein Flag in den Tabellen, welches bei dem Import falsch gesetzt sein könnte, und nun dafür sorgt, dass alle Termine bereits abgelaufen sind?

Gruß
Bettes
bettes
Beiträge: 65
Registriert: 12. Mai 2008, 23:33
Kontaktdaten:

PHP-Code geändert und Termindarstellung erfolgreich

Beitrag von bettes »

Hallo,

ich habe mal den aktuellen Code des Moduls date mit dem der Version 1.4.x verglichen und dann die Bedingung für die SQL-Abfrage abgeändert.

Code: Alles auswählen

//fuer alte Termine...
    elseif($req_mode == "old")
    {
        $conditions = "   AND dat_begin < '$act_date'
                          AND dat_end   < '$act_date' 
                        ORDER BY dat_begin DESC ";

    // Originalcode der Version 2.0
    //	$conditions = "   AND DATE_FORMAT(dat_begin, '%Y-%m-%d') < '$act_date'
    //                      AND DATE_FORMAT(dat_end, '%Y-%m-%d')   < '$act_date' 
    //                    ORDER BY dat_begin DESC ";
    // **************************

    }
    //... ansonsten fuer neue Termine
    else
    {
        $conditions = "   AND (  dat_begin >= '$act_date'
                              OR dat_end   >= '$act_date' ) 
                        ORDER BY dat_begin ASC ";

    // Originalcode der Version 2.0
    //	$conditions = "   AND (DATE_FORMAT(dat_begin, '%Y-%m-%d') >= '$act_date'
    //                      OR DATE_FORMAT(dat_end, '%Y-%m-%d')   >= '$act_date' 
    //                    ORDER BY dat_begin ASC ";
    // **************************
    }
}
Mit den Änderungen auf die alte Version funktioniert die SQL-Bedingung. Da ich mich nun nicht so gut mit den Date-Funktionen auskenne, weiß ich leider nicht was an der Script-Version 2.0 nicht funktioniert.

Es kann natürlich sein, dass durch meinen neuen Export-/Import eine Umstellung der Datumsdarstellung vorgekommen ist. Um das auszuschließen, habe ich daher ein Backup der Datenbank, welches ich kurz nach der Installation von Version 2.0 gezogen habe, unverändert in die SQL-Datenbank eingespielt, aber das Ergebnis war ebenfalls die fehlerhafte Darstellung.

Vielleicht könnt Ihr Euch ja nochmal den Code an der betreffenden Stelle ansehen.

Gruß
Bettes
Antworten