[TYPO3-german] Probleme mit Ajax im Backend

Manfred Rutschmann mru at revier.de
Wed Mar 18 19:37:24 CET 2009


Hallo Community,

ich habe ein Problem mit ajax im Backend. Mein BE Modul bindet folgendes
ein:

$this->doc->loadJavascriptLib('contrib/prototype/prototype.js');
$this->doc->loadJavascriptLib('../../typo3conf/ext/mr_kundenverwaltung/js/kundenverwaltung.js');
       
$this->doc->JScodeArray['kv'] = '
 kv.clickURL = "../../typo3conf/ext/mr_kundenverwaltung/mod1/index.php";
 kv.ajax     = "test";';

Zusätzlich habe ich eine ext_localconf in der ich die ajaxID registriere:
<?php
if (!defined ('TYPO3_MODE')) {
 	die ('Access denied.');
}

$TYPO3_CONF_VARS['BE']['AJAX']['tx_mrkundenverwaltung_module1::ajxRequest']
=
'EXT:mr_kundenverwaltung/mod1/index.php:tx_mrkundenverwaltung_module1->ajxRequest';
?>


Das js zum Request schaut folgendermasen aus:
 var kv = {
	clickURL: '',	
	ajax: true,	// 
	mousePos: { X: null, Y: null },

	req: function(params) {	
			new Ajax.Request(this.clickURL, {
				method: 'get',
        parameters: 'ajaxID=tx_mrkundenverwaltung_module1::ajxRequest',
				onComplete: function(xhr) {
					var response = xhr.responseXML;
					alert(response);
				}.bind(this)
			});
	}
}
function test(vari)	{
	kv.req(vari);
}

Wenn ich jetzt durch einen submit button einen request absetze,
funktioniert das soweit. mein Backendmodul gibt aber als fehlermeldung aus:

<b>Fatal error</b>:  Call to a member function includeLLFile() on a
non-object in <b>/html/typo3conf
/ext/mr_kundenverwaltung/mod1/index.php</b> on line <b>30</b><br />

Prinzipiel wird zwar mein Backendmodul aufgerufen, aber es scheitert wohl
daran, weil der aufruf direkt auf die index.php geht? Die Datei fängt so
an:

$GLOBALS['LANG']->includeLLFile('EXT:mr_kundenverwaltung/mod1/locallang.xml');
require_once(PATH_t3lib . 'class.t3lib_scbase.php');
$BE_USER->modAccess($MCONF,1);
require_once (PATH_t3lib.'class.t3lib_page.php');
require_once (PATH_t3lib.'class.t3lib_tstemplate.php');
require_once (PATH_t3lib.'class.t3lib_tsparser_ext.php');  

class  tx_mrkundenverwaltung_module1 extends t3lib_SCbase {
				var $pageinfo;

				/**
				 * Initializes the Module
				 * @return	void
				 */
				function init()	{

Und so weiter...

Wie kann ich mein Backend Modul selbst über ajax nochmal aufrufen?

Danke für Infos,

Manfred


More information about the TYPO3-german mailing list