Zum Inhalt springen

Variablen an TS

Erstellt am 24. Januar 2005 · 6 Antworten · letzte Antwort am 26. Januar 2005

Tags: Frage

Klappskali ·

Moinsen!

Betrifft Verwendung von PHP_SCRIPT... Wie kann ich eine Variable an das TS Setup übermitteln?
Ich möchte irgendwas in dieser Richtung tun:

Im PHP_SCRIPT:
.
.
.
$GLOBALS['meine_variable'] = "hundekuchen";
.
.
.


Im TS Setup:

[globalString = $GLOBALS['meine_variable']="hundekuchen"]
page.21 < styles.content.get

Danke, KK.

robert.​meyer ·

Hallo,

der Ansatz ist wesentlich einfacher ;-)

includeLibs.irgendwas = fileadmin/script.php
[...]
irgendwas = USER_INT
irgendwas.userFunc = main
irgendwas.file = fileadmin/script.php
irgendwas.name = Robert Meyer
irgendwas.adresse.strasse = Königsberger Strasse 6
irgendwas.adresse.plz = 32339
[...]

Im PHP_SCRIPT (fileadmin/script.php):

function main($conf, $content) {
   $name = $conf["name"];
   $strasse = $conf["adresse."]["strasse"];
   $plz = $conf["adresse."]["plz"];
   $content = $name."<br>".$strasse." ".$plz."<br><br>";
   return $content;
}

(Ungetestet!)

Klappskali ·

...erstmal danke, aber... 😉

wenn ich das beispiel richtig verstehe lese ich doch damit daten aus dem TS-Setup aus?!

Ich möchte aber das eine im meinem PHP-Code auftretende Variable für das TS-Setup bereitgestellt wird (also quasi die andere Richtung) und dieses die Variable für die Verarbeitung, z.B. einer Condition verwenden kann.

Vielleicht habe ich meine Frage falsch formuliert, nochmal in Kürze 😉

1. wie muß ich eine Variable in PHP deklarieren, dass Sie im TS-Template verwendet werden kann?
2. wie rufe ich diese globale Variable dann im TS-Template auf?

Nochmals Danke, KK.

Klappskali ·

... geht das nicht!? Oder weiß das niemand?

Ich suche da jetzt schon eine Weile. Das einzige was ich finden konnte sind folgende Möglichkeiten, hauptsächlich Varianten mit GET und POST und Typo3-DB-Tupel (TSref S. 20 und bei getText):

Variable aus einer URL auslesen: 
[globalVar = GP:die_variable = 2] 

oder

[globalVar = HTTP_POST_VARS|key|vars]

etc.

Ich würde aber gerne im PHP-Skript eine globale Variable definieren und die im TS abfragen.
Das muß doch schonmal jemand gebraucht haben, oder geht das vielleicht wirklich nicht? (was ich mir ehrlich gesagt nicht vorstellen kann)

Freue mich auf Antworten, KK:

Klappskali ·

.. ich parse ein XML-File und extrahiere so einiges an Daten über die Person die gerade die Seite aufrufen will. Dementsprechend soll dann die Seite auf die Bedürfnisse des Benutzers eingestellt werden.

Ich wollte die Informationen nicht alle über die URL übergeben, sondern das eben das Skript die Information global zur Verfügung stellen lassen, damit ich in Abhängigkeit davon das TS-Template anpassen lassen kann --> verschiedene Template-Varianten etc.

so in etwa soll das aussehen 🙂

--> letztendlich will ich mehrere Variablen an TS-Setup übergeben.

Klappskali ·

HEUREKA... Ich habe eine Lösung meines Problems gefunden.
Ich schicke dem Client jetzt ein COOKIE und dann kann ich mehrere Marker mit globalen Variablen ersetzen lassen.

marks.TEXT = PHP_SCRIPT_EXT
marks.TEXT.file = fileadmin/php/global.inc
marks.WIDTH = TEXT
marks.WIDTH.data = global:HTTP_COOKIE_VARS|width

Bei CONDITIONs ist die Notation etwas anders, nämlich:

[globalVar = HTTP_COOKIE_VARS|width < 200]
.
.
.
[global]

Wer den Unterschied nicht bemerkt hat - ohne "global" vor der Variablen.

... zwei Tage meines Lebens. Hoffentlich hilft es auch jemand anderem.

KK.