Hallo zusammen,

aktuell habe folgendes Problem:

Ich habe eine Extension geschrieben welche in mehrere Submodule aufgeteilt ist.

Jetzt ist auf einer Seite die Extension in der Konfiguration zur Dateneingabe eingebunden und auf einer zweiten Seite sollen die Daten, welche in die DB geschrieben worden sind als Liste ausgegeben werden.

Es wird also ein Formular angezeigt in welchem Daten eingeben werden können. Nachdem die Daten von der Extension verarbeitet und in die DB geschrieben worden sind wird eine kurze Bestätigungsseite angezeigt mit einem Link zu der Ausgabe-Seite.

So weit so gut.

Wenn ich allerdings sofort auf den Link zur Ausgabe-Seite klicke, werden mit zwar die Daten aus der DB wie gewünscht angezeigt, allerdings ohne den aktuellen Datensatz. Dieser erscheint nach mehrmaligen Seite neuladen (am besten per SHIFT-F5).

Da denkt doch sofort daran, ist ja klar, die Seite wurde mit Sicherheit aus dem Cache geholt.

Nur habe ich den Cache zu Entwicklung per Typoscript ausgeschaltet:

config {
no_cache = 1
}

Zur Sicherheit habe ich in der Extension den Cache per ext_localconf.php ausgeschaltet: t3lib_extMgm::addPItoST43($_EXTKEY, 'pi1/class.user_extclass_pi1.php', '_pi1', 'list_type', 0);

Über die Extension developerlog lasse ich mir Logausgaben zeigen, vor die Anzahl der gefundenen Reihen der SQL-Abfrage und auch hier wird zunächst die neue Zeile nicht mitgezählt.

Nativ per SQL sehe ich den neuen Datensatz natürlich sofort.

Die Daten werden per

$GLOBALS['TYPO3_DB']->exec_INSERTquery()

in die DB eingefügt.

Die Abfrage erfolgt mit

$res = $GLOBALS['TYPO3_DB']->exec_SELECT_queryArray()

Wisst ihr eventuell noch weitere Gründe, warum auf der Anzeigeseite der frisch eingefügt Datensatz nicht erscheint? Werden irgendwie SQL Queries gecachet?

Es ist wohl der eAccelerator 0.9.5.3 installiert, ich habe aber nichts gefunden was darauf hindeutet das hier SQL Queries gecached werden, bzw. man muss spezielle Methoden benutzen damit SQL Queries gecached werden. Aber selbst wenn, da sich das Resultset definitv geändert hat, sollte dieses auch zurückgegeben werden.

Leider haben mich Google und Co in dieser Sache noch nicht schlauer gemacht.

Vielleicht hat einer von euch noch ne Idee. Ich habe versucht alle relevanten Information zu geben, ohne einfach stupide den komplette PHP-Code und Typo3-Config reinzukopieren. Bitte sagt Bescheid, wenn euch bestimmte Informationen fehlen, ich werde versuchen diese so gut wie möglich zu ergänzen.

Schonmal vielen Dank im Vorraus ...

Gruß,

Tobias Wolf
_______________________________________________
TYPO3-german mailing list
TYPO3-german@lists.typo3.org
http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german

Antwort per Email an