AJAX Probleme

Gesperrt
Holtiroso
Beiträge: 23
Registriert: Di 14. Okt 2008, 12:56
Kontaktdaten:

AJAX Probleme

Beitrag von Holtiroso » Di 13. Dez 2011, 15:45

Hallo,

ich habe ein paar Probleme Ajax in Contenido einzubinden.
Ich habe hier schon einige Beiträge gelesen nur hat leider keiner dazu beigetragen das Problem zu lösen.

Ich setze die Version 4.8.15 ein und habe ein Testmodul gebastelt um per xAJAX diverse Ausgaben zu machen.
Diese will ich später dann nutzen um auch Datenbankabfragen und dergleichen darüber zu machen.
Allerdings funktioniert das ganze schon von vornherein leider nicht.

Anbei mal das Modul was ich Testweise eingebaut habe:

Code: Alles auswählen

<?php
$phpRoot= ".";
/*** AJAX Core einbinden */
include_once $phpRoot."/includes/xajax05/xajax_core/xajax.inc.php";
//Ajax
$xAjax = new xajax();
$xAjax->register(XAJAX_FUNCTION,"fnxTestfunktion");
$xAjax->configure("debug",true);
$xAjax->configure('responseType','XML');
function fnxTestfunktion()
{
    //xAjax Responseobjekt erstellen    
    $output="Ich komme eben aus einer
                Ajax Funktion";
    $oResponseAjax = new xajaxResponse();
    $oResponseAjax->assign("ajax_test_output","innerHTML",htmlentities($output));    
    return $oResponseAjax;
}

$xAjax->processRequest();
$xAjax->printJavascript($phpRoot."/includes/xajax05/");

?>
<input type='button' value='go' OnClick='xajax_fnxTestfunktion();'>

<div id="ajax_test_output"></div>
Es wird hierbei kein Fehler angezeigt. Allerdings bekomme ich beim DEBUG eine Meldung die ich nicht ganz verstehe:
xajax debug output
Tue Dec 13 2011 15:12:05 GMT+0100

ERROR: ResponseReceived: Invalid response XML: The response contains an unexpected tag or text: {data}.
Ich habe schon alles probiert, sei es mit ob_start und ob_end_clean usw.
Was ich noch nicht gemacht habe ist das ganze mit einem separaten Template zu machen. Das würde ich auch gerne vermeiden.

Ich hoffe es gibt hier eine andere Lösung und ihr könnt mir dabei helfen.

Vielen Dank vorab und viele Grüsse
Holti

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: AJAX Probleme

Beitrag von Spider IT » Di 13. Dez 2011, 18:59

Hallo Holti,

dein Problem ist, dass du dein Ajax-Code in ein Modul zusammenbaust und Contenido bis dahin schon einiges an Output generiert hat.
Es gibt hier im Forum irgendwo ein Beitrag, wie du bei Contenido das Output-Caching einschalten und dadurch im Modul das bisher generierte verwerfen kannst.
Leider habe ich den Link zum Beitrag nicht zur Hand, da musst du wohl die Suche betätigen.

Gruß
René

Holtiroso
Beiträge: 23
Registriert: Di 14. Okt 2008, 12:56
Kontaktdaten:

Re: AJAX Probleme

Beitrag von Holtiroso » Mi 14. Dez 2011, 12:15

Hallo René,

vielen Dank für die Info.
Ich habe gestern so ziemlich alle Seiten durchprobiert die sich hier mit AJAX beschäftigen. Habe auch gesehen das es bei einigen klappt.
Ich denke einfach mal das ich irgendwo einen Fehler gemacht habe.
Wegen dem speziellen Output-Caching hab ich nichts gefunden.
Was habe ich gemacht:
Ich habe die front_contend.php bearbeitet und am Anfang ob_start(); sowie am Ende ob_end_flush(); eingetragen.
Das ganze direkt nach page_close(); (habe auch probiert es hinter beiden page_close(); zu packen)
Dann habe ich in mein Modul ein ob_end_clean(); integriert.
Das einzige was ich dann habe ist eine weisse Seite ohne irgendwelche Formatierungen, aber auch dann funktioniert der AJAX aufruf nicht.
Ich bin leider auch nicht so tief drin das ich sage ich hätte alles korrekt gemacht. ;-)
Was natürlich evtl. noch erschwerend hinzukommt ist, dass ich auch noch ModRewrite einsetze.
Ich habe auch bei OnClick schon mit return false; probiert.
Also so ziemlich alles was ich dazu bei Google und hier gefunden habe.
Es kann natürlich sein das ich falsch gesucht habe und somit nicht auf das richtige gestossen bin oder das ich irgendwas falsch eingestellt habe bzw. an die falschen Positionen eingetragen hab.
Aber es geht leider nichts. :-(

Noch mal vielen Dank und viele Grüsse
Holti

Holtiroso
Beiträge: 23
Registriert: Di 14. Okt 2008, 12:56
Kontaktdaten:

Re: AJAX Probleme

Beitrag von Holtiroso » Mi 14. Dez 2011, 14:31

Hallo,

vielen Dank noch mal, aber ich habe es gerade selbst gelöst indem ich doch auf die "leere Layout" Variante umgestiegen bin.
Somit funktioniert es zumindest. Ist zwar nicht die feine Lösung da man so zwei Ajax Objekte aufmachen muss und Probleme gibt wenn man mehrere Funktionen in die eine Datei packen möchte aber zumindest schon mal eine Lösung. Wenn aber jemand noch eine andere (bessere) Lösung hat wäre ich sehr dankbar dafür.

Vielen Dank, viele Grüsse und schöne Feiertage

Holti

Gesperrt