public function meineFunktion($wert) {
echo $wert;
}
Wenn ich das ganze nun ausprobiere bekomme ich folgende Fehlermeldung:
Fatal error: Class ‘oxUBase’ not found in /home/www/htdocs/modules/kürzel/meinmodul/controller/mein_controller.php on line 8
In Zeile 8 steht:
class mein_controller extends oxUBase {
Jemand eine Idee wie ich den Aufruf/die Wert übergabe hin bekomme?
Später möchte ich über die php Funktion einen Rückgabewert an das JS geben, vielleicht hat hierzu auch schon jemand eine Idee.
Welchen Teil meinst du genau?
Ich kann werder in [B]How to Extend OXID eShop With Modules (Part 1) [/B]noch in [B]How to Extend OXID eShop With Modules (Part 2)[/B] etwas zu der Thematik finden.
Wenn du Oxid MVC benutzen willst kannst du deine Datei nicht mit /modules/kürzel/meinmodul/controller/mein_controller.php aufrufen sondern mit index.php?cl=mein_controller und über das array “files” in metadata.php deinen controller dem autoloader bekannt machen.
MVC funktioniert bisschen anders als du denkst.
Die View Klassen müssen ein Template zurückgeben. Und in diesem Template kannst du dann alles ausgeben was du möchtest. Eine X-Beliebige Klasse kann nicht einfach so irgendwas auf der Webseite ausgeben.
schau mal die Klassen an, die übers Frontend aufrufbar sind. Welche Klasse steht dort hinter dem “extends”? Und schau dir render() Funktion an.
ich weiß,dass dein Modul oxUBase erweitert, das ist auch soweit korrekt. Nur deinem Modul fehlt die entscheidende Funktionalität, die für die Anzeige von Daten sorgt
[QUOTE=nerd;110447][B]UPDATE:[/B] okay ich habe den Wert jetzt über oxConfig::getParameter(‘wert’) bekommen.
Bleibt noch das problem mit dem xdebugger Müll[/QUOTE]
Hast du debugging in oxconfig eingeschaltet, meinst du das? Das kannst du im Ajax-View abschalten:
In meinem Render sage ich jetzt, wenn der Parameter übergeben, dann zeige ein anderes.tpl. Das funktioniert jetzt auch.
(In anderes.tpl steht jetzt nur TEST)
Wenn ich jetzt alles wieder auslösen wird mir folgendes angezeigt.
rückgabewertderphpfunktion
xdebug Meldungen
"Warning: Cannot modify header information - headers already sent by…"
TEST
Ich weiß aber nicht woher das kommen könnte. Ich habe keine var_dump oder irgendetwas eingebaut.
Warning: Cannot modify header information - headers already sent by (output started at /home/www/htdocs/modules/kürzel/meinmodul/controller/mein_controller.php:80) in /home/www/htdocs/core/oxutils.php on line 1171
Da musst du schauen: output started at /home/www/htdocs/modules/kürzel/meinmodul/controller/mein_controller.php:80
Kein schließendes PHP-Tag verwenden.