Zum Inhalt springen

GET-Variablen an PHP übergeben

Erstellt am 1. Januar 2008 · 6 Antworten · letzte Antwort am 22. April 2008

Tags: Frage

matsew ·

Hallo!
Ich habe folgendes Problem:
Wie bekomme ich TypoScript dazu, dass es alle GET-Variablen (oder nur bestimmte, das würde mir auch genügen) an ein PHP-Script übergibt?
Bis jetzt sieht mein TS so aus:

page.includeLibs.some_random_id_string = typo3conf/ext/my_ext/hauptseite.php


page.10.subparts.CONTENT >

#für page.10.subparts.CONTENT (<!--###CONTENT###-->) eine userfunction definieren

page.10.subparts.CONTENT = USER

#terminkalender als funktion definieren

page.10.subparts.CONTENT.userFunc = user_functions->hauptseite

# $conf['factor']

page.10.subparts.CONTENT.factor = ***Alle Get-Variablen als Array***

das ganze klappt auch so weit, nur die GET's eben nicht.

Viele Dank und ein frohes neues Jahr!

Matse

Daschmi ·

Hi,

page.10.subparts.CONTENT.name = GPvar:name

dann hast du in deiner Funktion

class user_functions { 
  function hauptseite($content, $conf) {
    $conf['name']
    ...
  }
}

Aber über den $_REQUEST Array sollt es auch gehen

Gruß

Daschmi

matsew ·

Viele Dank!

Das tut soweit. Ich habs jetzt zwar noch anders gelöst

<?php
class user_functions {
function hauptseite($content, $conf) {
global $_GET;
$get_vars = $_GET; #eig. unnötig, aber egal ;-)
 ...
}
} 
?>

Der $_REQUEST-Array liefert mir zu viele unnötige Daten (auch Cookies, etc.) und mit GPvar:name müsste ich jede GET-Variable einzeln übergeben.

Allerdings habe ich noch eine Frage dazu:

ich mache das jetzt so, wie oben beschrieben. Wenn ich allerdings in der URL (oder per Link) eine GET-Variable änder, tut sich nichts. Das PHP-Script scheint von Typo3 gecacht zu sein. Würde es nicht gecacht werden, wenn ich die GET-Vars. per TS übergebe? (Dann wüsste typo3 ja, dass es was dynamisches ist).
Oder gibt es eine andere möglichkeit, den Cache dauerhaft (per TS) zu umgehen?

Vielen Dank und Grüße,
Matse

Mr.​TRTD ·

Moin,

ich muss da leider noch einmal nachhaken. Ich bekomme einfach meinen Text nicht übergeben.

30 = USER_INT
30{
	userFunc = user_MYCLASS->user_MY_FUNCTION
	myVariable = GPvar:tx_meineExtension_pi1|showUid
}

Die Function kann ich ansprechen. Aber egal, was ich eingebe, die Variable "GPvar:tx_meineExtension_pi1|showUid" wird immer als Klartext übermittelt.

Ich brauche aber die echte ID.

Noch besser wäre etas in der Art:
myVariable = DB:tx_meinExtension_pi1:{GPvar:tx_meineExtension_pi1|showUid}:name

Das wäre prima, wenn ich das gelöst bekomme.