Page 2 of 2

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 27. May 2018, 18:18
by Uwe367
Besten Dank für die ausführliche Erläuterung :D

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 3. Jun 2018, 15:17
by Uwe367
Script ist nun hier zu finden: https://github.com/uwe367/frontend-render
Ins Wiki komme ich leider nicht rein (403 Forbidden)

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 3. Jun 2018, 17:39
by Oliver Georgi
Habe das gerettete Wiki hier Live genommen https://wiki.phpwcms.org/

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 3. Jun 2018, 17:56
by Uwe367
Oliver Georgi wrote: Sun 3. Jun 2018, 17:39 Habe das gerettete Wiki hier Live genommen https://wiki.phpwcms.org/
Ah ok. Dann bau ich das die Tage dort ein. Danke :)

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Wed 14. Nov 2018, 08:14
by Uwe367
Habs denn heute nun endlich geschafft das neue Script im Wiki unterzubringen und es ist ab sofort hier zu finden.

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 22. Mar 2020, 07:40
by Uwe367
Ich stelle gerade ein sehr merkwürdiges Verhalten mit diesem Script fest.
Eine Installation läuft im Root Verzeichnis des Servers, dort funktioniert das Script wie es soll.
Bei einer Testinstallation in einem Unterverzeichnis auf dem gleichen Server wird das aktuelle Datum und Uhrzeit (Fallback) ausgegeben, aber nicht Datum und Uhrzeit der letzten Bearbeitung.
Die Installation im Serverroot ist eine 1.9.12 unter PHP 7.4.2, die in dem Unterverzeichnis ist eine 1.9.15 unter PHP 7.4.2.
Wo könnte denn hier der Fehler liegen? An phpwcms bestimmt nicht denn das Script fragt ja nur die DB nach dem neuesten Datum ab.....

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 22. Mar 2020, 10:28
by Uwe367
Ich komme der Sache scheinbar näher denn nun habe ich einen Fehler in der phpwcms_db_error.log gefunden der durch das Script verursacht wird. Nun muß ich nur noch nach einer Lösung suchen.....

phpwcms_db_error.log schreiben lassen:
In der conf.inc.php

Code: Select all

$phpwcms['db_errorlog'] = true; // Log DB queries - false|true
Zu finden ist sie dann im Verzeichnis content/log

Fehler:

Code: Select all

[2020-03-22 10:09:28] Incorrect usage of UNION and LIMIT, QUERY: "SELECT UNIX_TIMESTAMP(latest_ts) AS latest_ts FROM(
    SELECT MAX(article_tstamp) AS latest_ts FROM phpwcms_article WHERE article_deleted=0 AND article_public=1 LIMIT 1
    UNION
    SELECT MAX(acat_tstamp) AS latest_ts FROM phpwcms_articlecat WHERE acat_trash=0 AND acat_aktiv=1 LIMIT 1
    UNION
    SELECT MAX(acontent_tstamp) AS latest_ts FROM phpwcms_articlecontent WHERE acontent_visible=1 AND acontent_trash=0 LIMIT 1
) AS t1 LIMIT 1"
Und dieser Fehler wiederholt sich eben bei jedem neuen Seitenaufruf.
Vielleicht hat jemand einen Tip.

Re: Script RT Last update arbeitet nicht mehr richtig

Posted: Sun 22. Mar 2020, 11:02
by Uwe367
Scheinbar habe ich die Lösung gefunden. Jedenfalls funktioniert das ganze jetzt wieder wie es soll.
Vorher:

Code: Select all

$sql = 'SELECT UNIX_TIMESTAMP(latest_ts) AS latest_ts FROM(
    SELECT MAX(article_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_article WHERE article_deleted=0 AND article_public=1 LIMIT 1
    UNION
    SELECT MAX(acat_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_articlecat WHERE acat_trash=0 AND acat_aktiv=1 LIMIT 1
    UNION
    SELECT MAX(acontent_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_articlecontent WHERE acontent_visible=1 AND acontent_trash=0 LIMIT 1
) AS t1 LIMIT 1';
Nachher: Die SELECT Anweisungen müßen nun wohl in Klammern stehen.

Code: Select all

$sql = 'SELECT UNIX_TIMESTAMP(latest_ts) AS latest_ts FROM((
    SELECT MAX(article_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_article WHERE article_deleted=0 AND article_public=1 LIMIT 1)
    UNION
    (SELECT MAX(acat_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_articlecat WHERE acat_trash=0 AND acat_aktiv=1 LIMIT 1)
    UNION
    (SELECT MAX(acontent_tstamp) AS latest_ts FROM '.DB_PREPEND.'phpwcms_articlecontent WHERE acontent_visible=1 AND acontent_trash=0 LIMIT 1)
) AS t1 LIMIT 1';
Vielleicht kann Oliver mal drüber schauen wenn er vorbei schaut und ne kurze Info da lassen ob das so ok ist.
Wenns so ok ist ändere ich es auch im Wiki.

Das einzige was nicht funktioniert (funktionierte übrigens noch nie) ist die Änderung des Ausgabedatums wenn eine neue Ebene erstellt wird, aber ist das notwendig?
Kommt ja eigentlich nicht vor daß ich nur eine leere Ebene ohne Inhalte erstelle und Änderungen bzw. Erstellen von neuem Inhalt werden berücksichtigt.