Hallo,
ich hab mich nun dazu durchgerungen ein Extension
zu schreiben. Nun bleib ich schon an etwas vermutlich
sehr leichtem hängen:
ich hab mein Hauptprogramm:
class xyz extends tslib_pibase
{
function main($content, $conf)
{
return "hallo<br>welt";
}
}
bisher funktioniert das so alles wunderbar. Ich könnte
damit nun auch grössere Statische Inhalte darstellen
oder etwas aus einer DB generieren. Alles kein Problem.
Aber:
wie kann ich in meiner Extension Navigieren?
Ich möchte z.B. in meiner Extension einen Link
darstellen, wenn ich auf diesen klicke soll mir dann
die main routine etwas anderes darstellen:
function main($content, $conf)
{
$Return = "";
$command = ????;
switch($command) {
case("showinfo"):
$Return = "Hallo Welt<br>";
break;
default:
$Return = "<a href="???">Hallo Welt anzeigen</a><br>";
break;
}
return $Return;
}
kann mir jemand helfen dieses minimal Programm zum
laufen zu bekommen? Wie kann ich den Wert an sich
selber wieder übergeben und sich selber mit der selben
page ID aufrufen wenn man auf den Link klickt?
Gruß ggsm
ggsm schrieb
Ich möchte z.B. in meiner Extension einen Link
darstellen, wenn ich auf diesen klicke soll mir dann
die main routine etwas anderes darstellen:
function main($content, $conf)
{
$Return = "";
$command = ????;
switch($command) {
case("showinfo"):
$Return = "Hallo Welt<br>";
break;
default:
$Return = "<a href="???">Hallo Welt anzeigen</a><br>";
break;
}
return $Return;
}
Wie kann ich den Wert an sich
selber wieder übergeben und sich selber mit der selben
page ID aufrufen wenn man auf den Link klickt?
Versuch's mal mit
global $TSFE;
$id = $TSFE->id;
$Return = '<A href="'.$this->getLinkUrl($id).'">'.'Hallo Welt anzeigen'.'</A>'
Versuch's mal mit
Code:
global $TSFE;
$id = $TSFE->id;
$Return = '<A href="'.$this->getLinkUrl($id).'">'.'Hallo Welt anzeigen'.'</A>'
Damit landest du zwar wieder auf der selben Seite, hast aber noch keinen Parameter übergeben, der irgendwie zur Programmablaufsteuerung dienen könnte.
Entweder übergibst du also per POST oder GET einen Wert,
z.B. ganz einfach
<input type="hidden" name="name" value="value">
,
oder du benutzt sessions.
In deiner main function fragst du diesen Wert ab:
$command = $_POST['name'];
switch($command) {
...
viele Grüße
jenses
danke, dass hilft mir sehr weiter 🙂
Hi!
Also, wenn Du's sauber und gemäss des Typo3-Coding-Styles machen möchtest, dann arbeitest Du über die sogenannten piVars.
Als Einführung solltest Du Dir den folgenden Artikel anschauen: http://typo3.org/development/articles/using-links-in-frontend-plugins/
CU
maxhb