Hi,
ich raff es gerade überhaupt nicht und bin am verzweifeln. Naja, nicht am verzweifeln, aber am grübeln.
Folgendes: Ich rufe per Ajax.Request (prototype-Framework) eine PHP-Datei auf.
varr ajax = new Ajax.Request
(
"test.ajax.php",
{
method: "post",
postBody: "action=refresh_all",
requestHeader:["Content-Type", "text/html"],
onComplete: function(r)
{
eval(r.responseText);
},
onFailure: function(r)
{
falert(r.responseText);
}
}
)
In der PHP-Date test.ajax.php wird der übergebene Parameter $action ausgewertet:
switch($action)
{
case "refresh_all":
// Hauptrubriken bestimmen
frefresh_maincats();
break;
default:
echo "\nalert('Fehler im System');";
}
Mit Firebug für den Firefox (ich habe Version 3) überprüfe ich das Resultat. Wenn die Funktion frefresh_maincats keine Ausgabe (echo irgendwas) produziert, erhalte ich als Antwort auf den Ajax.Request (laut Firebug) den default "alert('Fehler im System: Die Option existiert nicht.');". Eigentlich müsste ich eine leere Antwort bekommen, oder nicht? Produziert die Funktion frefresh_maincats stattdessen eine Ausgabe, erhalte ich diese Ausgabe als Antwort auf den Ajax.Request (laut Firebug).
Ist jetzt nicht weiter schlimm, da dieses Phänomen nur mit leerer Datenbank auftritt, aber interessieren würde mich das schon, woran das liegt.