Zum Inhalt springen

und es wird immer noch gecached

Erstellt am 2. September 2009 · 2 Antworten · letzte Antwort am 3. September 2009

Tags: Frage

StefanMasz86 ·

Hallo zusammen,
ich habe nun einige Stunden mit dem lesen von Tutorials verbracht, doch leider bleiben meine Bemühungen weiter erfolglos.

Das Thema ist auch sehr weitreichend wie ich finde, aber kommen wir nun zu meinem Problem, ich hoffe jemand erbahmt sich und erklärt es mir nochmal in einfachen Worten wieso immer noch gechaced wird.

Ich schreibe eine Extension zur Verwaltung von Datensätzen.
Und hierfür im speziellen u.a. ein Frontendplugin wo ein eingeloggter user per Klick Datensätze verstecken / sichtbar / löschen können soll.

ich lasse die Datensätze anzeigen und habe dahinter nun links (in form von icons) für die Funktionen.

$param = array ($this->prefixId.'[toogle]' => $key['uid'],
$this->prefixId.'[no_Cache]' => '1');
$this->pi_linkToPage($key['hidden'],$GLOBALS['TSFE']->id, '_self', $param );

Vorweg:

Es ist ein Userint Objekt!

$this->pi_USER_INT_obj = 1;

Ich habe mittlerweile (aus Verzweiflung) den kompletten Seitencache ausgeschaltet.
Sowohl in der Extension

$GLOBALS["TSFE"]->set_no_cache();

als auch im Backend

gecached wird die anzeige der Datensätze, sprich: klicke ich auf einen Link zum bearbeiten, passiert erst nach dem neuladen was.

Ich habe die vermutung dass meine SELECT abfrage gecached wird.
Dies tue ich nämlich zuerst:

$mysqlOffers = $GLOBALS['TYPO3_DB']->exec_SELECTquery($SELECT, $FROM, $WHERE, $ORDERBY);
.
.
.
$GLOBALS['TYPO3_DB']->exec_UPDATEquery($FROM, $WHERE, $VALUES);

letzteres kommt nach klicken des links.

Also nochmal langsam:
-> Datensätze laden
-> Datensätze bearbeiten, durch klick auf link(seite wird neugeladen)
-> Datensätze wurden erfolgreich bearbeitet, SQL abfrage liefert aber alten wert zurück

Wo wird hier gecached?!

Bitte, bitte Hilfe.

just2b ·

Hallo,

wenn das Plugin ein USER_INT ist, dann wirds nicht gecached!

Ich würde nach dem Bearbeiten mal einen redirect machen auf die List-View oder die Single-VIew mit dem Datensatz, das könnte es schon beheben.

lg georg

StefanMasz86 ·

Ein redirect auf sich selbst ohne die Parameter war wirklich hilfreich, löste auch sofort das "F4 - ups nochmal nen Datensatz gelöscht"-Problem.

$url = '?id='.$this->conf['edit'].'&offerID='.$this->piVars['edit'];
				header('Location: '.t3lib_div::locationHeaderUrl($url));
				exit();

Warum die Änderungen aber nicht sofort übernommen wurden bleibt weiter mysteriös.

Danke trotzdem viel mals.