PHP function mittel HTML Link aufrufen


#1

Hallo zusammen,

wie führt man eine PHP Funktion mittels HTML Link im Template aus?
Ich habe eine Klasse mit mehreren Funktionen und eine davon würde ich mittels Link ausführen.
Die Beispiele von OXID bringen mich nicht weiter, bekomme immer einen Hinweis das getSelfLink etc. nicht existiert.

< a href="[{$oView->getSelfLink()}] cl=[{$oView->meineFunction()}]" >
[{oxmultilang ident=‘RELOAD’}]
< /a >

Danke für jede HIlfe!


#2

PHP kannst in den Tags [{php}]…[{/php}] ausführen. Wenn die Variable dann im Template genutzt werden soll, dann kannst das z.B. so machen.

[{php}]
   $azd = $deine_php_funktion();
    #$oSmarty = oxUtilsView::getInstance()->getSmarty(); //(alt)
     $oSmarty = oxRegistry::get("oxUtilsView")->getSmarty();
    $oSmarty->assign("azd", $azd);
                                                      
[{/php}] 

#3

Hi rubbercut,

erst mal vielen Dank für deine Unterstützung.
Ich verwende ungern PHP im Template.
Habe auch schon einen anderen Lösungsweg gefunden:

< input type=“hidden” name=“cl” value=“MEINEKLASSE”>
< input type=“hidden” name=“fnc” value=“MEINEFUNKTION”>

Klappt wunderbar.

Viele Grüße


#4

das geht auch als Link, man muss nur zwei Sachen beachten:

  1. es heißt $oViewConf->getSelfLink() und nicht $oView->getSelfLink()
  2. und die richtige URL wäre ...?cl=Klasse&fnc=deineFunktion und nicht cl=deineFunktion

#5

Sorry, passt ja auch garnicht. Ich hatte das “mittels HTML Link” überlesen. Man sollte nicht 2 Dinge gleichzeitig machen :hugs: