Zum Inhalt springen

Eigene Ajax Extension

Erstellt am 6. Juni 2009 · 5 Antworten · letzte Antwort am 9. Juni 2009

Tags: Frage

eschemaster ·

Hallo,

ich schreibe grade eine eigene Extension und würde gerne das Mootools-Framework mit verwenden. Die Mootools Dateien habe ich bereits im TS eingebunden mit

page.includeJS.file51  = fileadmin/javascript/mootools.js
page.includeJS.file52 = fileadmin/javascript/ajax.js

Das klappt soweit gut. Ich kann jetzt also auf alle möglichen Sachen, die BEREITS GELADEN sind irgendwelche klicki bunti Effekte einbauen. Das was ich aber eigentlich wollte, war über ein Formular mit meiner Extension zu kommunizieren.

<form id="myForm" action="typo3conf/ext/myext/pi1/class.tx_myext_pi1.php" method="get">

Mir ist klar, dass das nicht erlaubt ist. Aber was muss ich tun damit das vom Prinzip her so klappt? Denn bisher erhalte ich erwartungsgemäß die Fehlermeldung:

Warning: require_once(PATH_tslibclass.tslib_pibase.php) [function.require-once]: failed to open stream: No such file or directory in /var/www/dummy-4.2.6/typo3conf/ext/uebungvi/pi1/class.tx_uebungvi_pi1.php on line 30

Fatal error: require_once() [function.require]: Failed opening required 'PATH_tslibclass.tslib_pibase.php' (include_path='.:/usr/share/php:/usr/share/pear') in /var/www/dummy-4.2.6/typo3conf/ext/uebungvi/pi1/class.tx_uebungvi_pi1.php on line 30

Was so viel ich weiß letztendlich bedeutet, dass ich keine PHP-Skripte direkt über den Browser aufrufen darf.
Ich habe mir schon mal xAjax angeschaut, aber muss das wirklich so kompliziert sein? Vielleicht kann mir jmd. weiterhelfen. Vielen Dank.

Christopher

eschemaster ·

Hi Georg,
danke für den Tipp. Hab es mir angeschaut. So richtig schlau werd daraus leider nicht. Wie läuft das in deiner Ext. ab?

1. du reagierst mit JS auf ein Event das im FE passiert
2. wo kommen die Daten im Backend an?
3. du verarbeitest die Anfragen in deiner pi1 Klasse, ist auch klar, aber wie kommen die Daten wieder ins FE?

Mit fehlt jeweils das Verständnis für den Übergang FE -> BE, BE -> FE.
Gibt es denn nicht irgendwo ein einfaches Tutorial um das Prinzip mal zu verstehen.

Danke dir ...

just2b ·

Hallo,

warum solltest du das BE brauchen?

im grunde ists sehr simpel.

du generist einen eigenen PAGE type, und den rufst du als zielurl auf. im TS wird definiert, dass der page type an eine funktion deiner Extension weitergegeben wird und dort gibst du den ajax request zurück

lg georg