Zum Inhalt springen

Problem mit Cache

Erstellt am 25. März 2004 · 11 Antworten · letzte Antwort am 28. März 2004

Tags: Frage

flash ·

hi,

ich würde gerne aus einer php-Datei heraus den Cache löschen.

Weiß jemand wie man das machen kann?

flash

TW ·
flash schrieb

hi,

ich würde gerne aus einer php-Datei heraus den Cache löschen.

Weiß jemand wie man das machen kann?

flash

mit php???
vielleicht über php einen cronjob ans laufen kriegen.....
oder nur mit nem cronjob
#10081

cu
thorsten

maxhb ·

Hi!

$pids="1,2,3,4,5";
$GLOBALS['TSFE']->clearPageCacheContent_pidList($pids);

Löscht den Cahe für die angegebenen Page-IDs

CU
maxbh

flash ·

ich brauch das ganze zum personalisieren.

so dass der user selbst die farbe zum darstellen des templates wählen kann.
ich wollte das ganze über css erstellen und dann, je nach auswahl, ein stil darstellen.
aber da der cache nicht nach der auswahl geleert wird, muss ich per das per php machen.

@maxhb
könntest du vielleicht noch schreiben wie ich das mit typo3 zu verknüpfen habe?
danke schonmal

maxhb ·

Hi!

flash schrieb

könntest du vielleicht noch schreiben wie ich das mit typo3 zu verknüpfen habe?l

Hmm, ich dachte, Du wolltest den Cache aus einer PHP-Datei heraus löschen. Dazu müsstest Du eigentlich nur eine angepasste Version des obigen Codes dort einpflegen.

Vielleicht habe ich Deine Frage aber auch nicht verstanden 😉

CU
maxhb

maxhb ·

Hi!
O.K., dann bohren wir mal ein bischen, also schön den Mund aufmachen, der Onkel Dr. hat Sprechstunde 😉

1. Gibt es dieses ominöse PHP-Script schon?
[ ] Ja
[ ] Nein

2a. Falls es das Script schon gibt: Über was für ein PHP-Script sprechen wir?
[ ] Extension oder
[ ] ein "normales" PHP-Script

2b. Falls es das Script noch nicht gibt: Was soll es denn machen
[ ] Ach, war nur so eine allgemeine Frage, Du weisst schon ...
[ ] Mensch, das würde ich ja gern mal hier posten!

3. Wieviel Ahnung hast Du von PHP?
[ ] Bin ich mit gross geworden
[ ] Einiegermassen
[ ] Hilfe! Ich bin doch nur Designer

CU
maxhb

flash ·

mhm, hoffentlich hast du ne totalnarkose eingeplant.

also ich hatte es folgendermassen vor(kein code 🙂 ) :
-template:

css
stil1
rot
stil2
blau
stil3
grün

php
lade php-datei "color"
benutze davon die variable $color

menu...
text...

-php skript benutzereinstellung (im typo3 als content):

dopdownmenü
auswahl als rückgabewert -> variable der farbe (zb rot)
gib den wert an das php skript "color"

-php skript "color" (externe datei):

if-bedingungen um den rückgabewert zu überprüfen
wenn zb rot, dann nimm "stil1"
wenn zb grün, dann nimm "stil3"
gib das ganze an das template zurück

und hier mein problem LEERE den CACHE

ich hoffe das war so etwas verständlich.
falls du das so nicht nachvollziehen kannst, dann poste ich auch den gesamten quellcode.
die ganzen dateien sind ineinander verschachtelt
der vollchecker in php bin ich nicht, eher der designer #giggle#

maxhb ·

Hi!
Schon mal überlegt, ob es nicht besser wäre mit (mehrere) CSS-Dateien und ein klein wenig TS zu arbeiten.
So nach dem Motto: Lade immer die CSS Datei $color.css und die formatiert dann alles hübsch für Dich?

CU
maxhb

maxhb ·

Hi!

flash schrieb

und wie könnte ich das umsetzen?

rot.css:

p { color: #ff0000; }

blau.css:

p { color: #0000ff; }

Im Typoscript Setup Deines Templates (Das Seitenobjekt heisst hier page):

# Sorgt dafür, das tmpl=xyz an alle Links angehängt und somit weitergegeben wird.
config.linkVars = tmpl
# Erstmal die Standard Stylesheets festlegen
page.stylesheet = standard.css
[globalVar = GP:tmpl= rot]
  page.stylesheet =  fileadmin/xyz/rot.css
[global]
[globalVar = GP:tmpl= blau]
  page.stylesheet =  fileadmin/xyz/blau.css
[global]

Wenn Du jetzt eine Seite Deiner Web Site ohne parameter aufrufst, dann wir standard.css benutzt. Wird das Parameter "&template=gruen" angehaengt erhälst Du gruen.css, analog fuer rot.css

CU
maxhb