Aktuelle Seite herausfinden

hallo,

ich sitze gerade vor einem, wahrscheinlich trivialen problem. ich denke schon, dass es eine entsprechende methode oder dergleichen gibt, die mir das erledigen kann.

und zwar brauche ich die aktuelle seite, die gerade aufgerufen ist. hier ein beispiel: index.php?r=site/contact

ich will die sprache wechseln und lande nach dem umschalten durch eine combo-box immer wieder auf der seite index.php?search, was ich nicht genau verstehe. dies will ich durch mehrere links (pro sprache eben einer) ersetzen, aber will genau auf der website bleiben!

mfg

armin

Hilft dir das weiter?

<?php


// Innerhalb eines Controllers:


$controllerName=$this->id;


$actionName=$this->action->id;

eher weniger, da ich diese angabe innerhalb eines widgets benötigt, um genauer zu sein, in einer view des widgets (components/views/languageBox.php).

Quote

eher weniger, da ich diese angabe innerhalb eines widgets benötigt, um genauer zu sein, in einer view des widgets (components/views/languageBox.php).

Nimm dies! :)

<?php


// Innerhalb eines Widgets:


$controllerName=$this->controller->id;


$actionName=$this->controller->action->id;

werde es gleich mal testen.

meine bisherige lösung ist die folgende, die auch wunderbar funktionert =)

<?php


	$query_array = $_GET;


	$query_array['language'] = 'LANGUAGE_TO_REPLACE';


	$query_string_tmp = 'index.php?' . http_build_query($query_array);


?>

Du kannst im Widget auf den Controller zugreifen:



$this->controller


Daher kannst du dir den link über CController::createUrl() zusammenbauen.

Zum Beispiel so:



$params = $_GET


$params['language'] = 'LANGUAGE_TO_REPLACE';


$url = $this->controller->createUrl('', $params);


$this->controller->redirect($url);