[TYPO3-german] Domain Cookie setzen und auslesen

Chris Bernhard chris at dreamride.de
Wed Jun 23 14:44:51 CEST 2010


Hi Stephan,

okay, habe das Menu schon weiter oben im TS mit allem was dazugehört
definiert und möchte quasi im CASE nur das jeweilige Objekt überschreiben.

Das eigentliche Problem ist wohl, dass Typo3 das Cookie mit

lib.navi = TEXT
lib.navi.data = global : HTTP_COOKIE_VARS | lastdomain

nicht sieht. Jetzt dann erstmal die Frage, wie bringe ich Typo dazu, 
dass das Cookie ausgelesen wird? Gibts hier für noch irgendwelche 
Einstellungen im Install Tool zu?

Fragen über Fragen ;-)

Ich danke Dir für Deine ausführliche Antwort,

allerbeste Grüße vom Chris

Am 23.06.2010 14:32, schrieb Stephan Schuler:
> Hallo Chris.
>
>
> Du solltest zunächst einmal prüfen, ob TYPO an dieser Stelle überhaupt den Cookie sieht. Dazu würde ich folgendes schreiben:
>
> lib.navi = TEXT
> lib.navi.data = global : HTTP_COOKIE_VARS | lastdomain
>
> Ich bin mir gerade nicht zu 100% sicher ob dein Zugriff stimmt.
> Wenn du hier dann den passenden Wert im Frontend ausgegeben bekommst kannst du dich ans CASE machen.
>
> Innerhalb der CASE-Anweisung habe ich natürlich nur die von dir geschriebenen Einzelheiten wiedergegeben. Ich kann mir recht gut vorstellen, dass dein HMENU einfach noch nicht vollständig konfiguriert ist. Dir fehlt so natürlich entryLevel, dazu dann "1", "2" (Menütiefen) und darin dann NO und ACT-Elemente; was man eben alles so im HMENU braucht.
>
> Um grundsätzlich das CASE zu validieren würde ich mit einem simplen TEXT anfangen. Erst wenn dir der TEXT anhand des Cookies die korrekte Ausgabe liefert kannst du sinnvoll auf ein HMENU erweitern. Vorher suchst du den Fehler einfach an zu vielen unterschiedlichen Stellen ohne konkrete Anhalspunkte.
>
>
> Grüße,
>
>
> Stephan Schuler
> Web-Entwickler
>
> Telefon: +49 (911) 539909 - 0
> E-Mail: Stephan.Schuler at netlogix.de
> Internet: http://media.netlogix.de
> -----Ursprüngliche Nachricht-----
>
> Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Chris Bernhard
> Gesendet: Mittwoch, 23. Juni 2010 14:11
> An: typo3-german at lists.typo3.org
> Betreff: Re: [TYPO3-german] Domain Cookie setzen und auslesen
>
> Hi Stephan,
>
> okay, dann liege ich damit wohl völlig falsch...
> Ich möchte halt abhängig vom Cookie Wert Menupunkte ein- und ausblenden.
> Das wäre eigentlich schon alles, gestaltet sich aber irgendwie
> schwieriger als gedacht.
>
> Wenn ich jetzt Dein Prinzip übernehme wird überhaupt kein Menu mehr
> angezeigt...
>
> Vielen Dank und allerbeste Grüße vom Chris
>
> Am 23.06.2010 13:53, schrieb Stephan Schuler:
>> Hallo Chris.
>>
>>
>> Du hast leider das Prinzip eines "CASE"-Objekts missverstanden! Ein CASE-Objekt ist keinesfalls mit einer case-Programmieranweisung zu vergleichen die "einen gekammerten Ausdruck ausführt".
>>
>> Man könnte (mit einigen zugedrückten Augen) sagen: Ein CASE ist ein etwas erweitertes COA bei dem nur derjenige Child-Tree zum Zug kommt, dessen Name auf das key-Element zutrifft.
>>
>>
>> Was du eigentlich willst:
>>
>> lib.navi = CASE
>> lib.navi {
>>
>>           key.data = global : HTTP_COOKIE_VARS | lastdomain
>>
>>           default = HMENU
>>           default {
>>                   excludeUidList = 67,68,69
>>           }
>>           67<   .default
>>           67.excludeUidList = 68,69
>>           68<   .default
>>           68.excludeUidList = 67,69
>>           69<   .default
>>           69.excludeUidList = 67,68
>> }
>>
>>
>> Wenn du ein Beispiel für ein "schönes großes CASE-Objekt" sehen möchtest: Guck dir "lib.tt_content" an.
>>
>>
>> Grüße,
>>
>>
>> Stephan Schuler
>> Web-Entwickler
>>
>> Telefon: +49 (911) 539909 - 0
>> E-Mail: Stephan.Schuler at netlogix.de
>> Internet: http://media.netlogix.de
>> -----Ursprüngliche Nachricht-----
>>
>> Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Chris Bernhard
>> Gesendet: Mittwoch, 23. Juni 2010 13:36
>> An: typo3-german at lists.typo3.org
>> Betreff: Re: [TYPO3-german] Domain Cookie setzen und auslesen
>>
>> Am 23.06.2010 13:13, schrieb Stephan Schuler:
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA256
>>>
>>> Hallo Chris.
>>>
>>>
>>> Ohne die Situation zu testen:
>>>
>>> CASE.key ist ein normaler String mit stdWrap.
>>> Aus diesem Grund hat "key" sowohl ein ".field" über das man die Fields des Context-Records verwenden kann als auch ein ".data" das -- als normales getText -- deine Global-Var ansprechen kann.
>>>
>>> http://wiki.typo3.org/index.php/De:TSref/stdWrap#data
>>>
>>> cookie = CASE
>>> cookie {
>>>            key.data = global : HTTP_COOKIE_VARS | lastdomain
>>> }
>>>
>>>
>>> Gruß,
>>>
>>>
>>> Stephan Schuler
>>> Web-Entwickler
>>>
>>> Telefon: +49 (911) 539909 - 0
>>> E-Mail: Stephan.Schuler at netlogix.de
>>> Internet: http://media.netlogix.de
>>>
>>> - --
>>> netlogix GmbH&    Co. KG
>>> IT-Services | IT-Training | Media
>>> Andernacher Straße 53 | 90411 Nürnberg
>>> Telefon: +49 (911) 539909 - 0 | Fax: +49 (911) 539909 - 99
>>> E-Mail: mailto:info at netlogix.de | Internet: http://www.netlogix.de/
>>>
>>> netlogix GmbH&    Co. KG ist eingetragen am Amtsgericht Nürnberg (HRA 13338)
>>> Persönlich haftende Gesellschafterin: netlogix Verwaltungs GmbH (HRB 20634)
>>> Umsatzsteuer-Identifikationsnummer: DE 233472254
>>> Geschäftsführer: Stefan Buchta, Matthias Schmidt
>>>
>>> - -----Ursprüngliche Nachricht-----
>>>
>>>
>>> Von: typo3-german-bounces at lists.typo3.org [mailto:typo3-german-bounces at lists.typo3.org] Im Auftrag von Chris Bernhard
>>> Gesendet: Mittwoch, 23. Juni 2010 12:36
>>> An: typo3-german at lists.typo3.org
>>> Betreff: Re: [TYPO3-german] Domain Cookie setzen und auslesen
>>>
>>> Am 17.06.2010 17:13, schrieb Chris Bernhard:
>>>> Hola zusammen,
>>>>
>>>> bin jetzt etwas weiter.
>>>> Cookies setze ich nun mittels einer kleinen PHP Extension.
>>>> Eigentlich ja ganz simpel, nun muss ich das Ding noch via
>>>> Typoscript verwursten und da ist nun der Hund begraben.
>>>>
>>>> Ich bräuchte also eine IF / ElSE bzw. besser CASE Anweisung.
>>>> Also sowas in der Art:
>>>>
>>>> [PIDinRootline = 30]
>>>> page.includeCSS {
>>>> file4 = fileadmin/templates/style/blue.css
>>>> file4.title = Standardansicht
>>>> file4.media = screen
>>>> }
>>>>
>>>> lib.navi = HMENU
>>>> lib.navi {
>>>> temp.mycookie.cObject = CASE
>>>> temp.mycookie.cObject {
>>>> key.field = global : HTTP_COOKIE_VARS | pid
>>>>
>>>> <!-- DANN hier sowas wie, wenn Cookie page id = 32
>>>> excludeUidList = 32
>>>>
>>>> <!-- DANN hier sowas wie, wenn Cookie page id = 50
>>>> excludeUidList = 50
>>>>
>>>> usw...
>>>>
>>>> }
>>>> }
>>>>
>>>> [END]
>>>>
>>>>
>>>> Vielen Dank für Eure Hilfe und beste Grüße,
>>>>
>>>> Chris
>>>>
>>>> Am 16.06.2010 12:41, schrieb Chris Bernhard:
>>>>> Hi zusammen,
>>>>>
>>>>> ich betreibe eine Typo3 Seite (T3 4.3.3) die mit mehreren
>>>>> Domains problemlos läuft. Nun möchte ich, wenn der User
>>>>> über eine Subdomain kommt ein Cookie schreiben und sobald
>>>>> der User wieder über die Hauptdomain kommt das Cookie
>>>>> auslesen und einen kleinen Banner zur Subdomain anzeigen.
>>>>>
>>>>> Wie stelle ich das am besten an?
>>>>>
>>>>> Vielen Dank für Eure Vorschlage und beste Grüße vom Chris
>>>>
>>> Hi zusammen mal wieder,
>>>
>>> ich komme mit dieser Sache einfach nicht weiter...
>>> Habs jetzt mal so probiert, aber CASE schluckt ja nur fields und
>>> somit nicht mein Cookie, oder?
>>>
>>> Hier mal das momentane TS:
>>>
>>>                    cookie = CASE
>>>                    cookie.key.field = global : HTTP_COOKIE_VARS | lastdomain
>>>                    # Das Objekt gibt den Inhalt nur zurück, wenn das Feld "header" nicht
>>> leer ist.
>>>
>>>                    # Wenn Cookie den Wert 67 hat
>>>                    cookie.67 = TEXT
>>>                    cookie.67 {
>>>                    # Mach hier was
>>>                    }
>>>
>>>                    # Wenn Cookie den Wert 67 hat
>>>                    cookie.68 = TEXT
>>>                    cookie.68 {
>>>                    # Mach hier was
>>>                    }
>>>
>>> Vielen Dank für Eure Hilfe und beste Grüße vom Chris
>>> _______________________________________________
>>> TYPO3-german mailing list
>>> TYPO3-german at lists.typo3.org
>>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>>>
>>>
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: PGP Universal 3.0.0 (Build 2881)
>>> Charset: Windows-1252
>>>
>>> wpUDBQFMIe0cpp0IwsibV8MBCKFVA/9pqnWjCzDsfY9KJK8WdYLWfr+A3lX0CWTp
>>> TK8KkodujB04/cIhP+/g5ncagLBTkdp+MfK8zp2GVhV4T+5+onkZ3UpMnZQBFM/u
>>> lFns908TNd9tNwcpr3oCnTzxmYowrK/1J01G+DqfOrUEOq3+mf54qrvPIx8kvVx0
>>> onhALYjbIQ==
>>> =sE1m
>>> -----END PGP SIGNATURE-----
>>
>> Hi Stephan,
>>
>> vielen Dank erstmal für Deine Antwort. Hab jetzt die ganze Sache so
>> geschachtelt, tut aber immer noch nicht, das Cookie ist auch definitiv
>> vorhanden...
>>
>> So siehts nun aus:
>>
>> [PIDinRootline = 409]
>>
>>                   cookie = CASE
>>                   cookie.key.data = global : HTTP_COOKIE_VARS | lastdomain
>>                   cookie.default = TEXT
>>                   cookie.default {
>>                   lib.navi = HMENU
>>                           lib.navi {
>>                            excludeUidList = 67,68,69
>>                           }
>>                   }
>>
>>                   # Wenn Cookie den Wert 67 hat
>>                   cookie.67 = TEXT
>>                   cookie.67 {
>>                           lib.navi = HMENU
>>                           lib.navi {
>>                           excludeUidList = 68,69
>>                           }
>>                   }
>>
>>                   # Wenn Cookie den Wert 67 hat
>>                   cookie.68 = TEXT
>>                   cookie.68 {
>>                           lib.navi = HMENU
>>                           lib.navi {
>>                           excludeUidList = 67,69
>>                           }
>>                   }
>>
>>                   # Wenn Cookie den Wert 67 hat
>>                   cookie.69 = TEXT
>>                   cookie.69 {
>>                           lib.navi = HMENU
>>                           lib.navi {
>>                           excludeUidList = 67,68
>>                           }
>>                   }
>>
>> [END]
>>
>> Vielen Dank und viele Grüße,
>>
>> Chris
>> _______________________________________________
>> TYPO3-german mailing list
>> TYPO3-german at lists.typo3.org
>> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>>
>
>
> _______________________________________________
> TYPO3-german mailing list
> TYPO3-german at lists.typo3.org
> http://lists.typo3.org/cgi-bin/mailman/listinfo/typo3-german
>



More information about the TYPO3-german mailing list