Rolf B: jQuery Ajax - PHP Script enthält mehrere echos, soll aber nur das letzte echo zurückgeben

Beitrag lesen

Hallo ebody,

ich habe mir in solchen Fällen auch schon mal so beholfen (weil mir das serverseitige Log fehlte). Es ist aber ein BEHELF, ein Serverlog ist besser.

class Log {
    public static $Zeilen = [];
    public static function Write($l) {
        self::$Zeilen[] = $l;
        // echo "$l<br>";
    }
}

Log.Write("Hello my dear loggi!");

$phpResponse = array(
	"hallo" => $hallo,
	"welt" => $welt
 );

$phpResponse["_DEBUG"] = Log::$Zeilen;

echo json_encode($phpResponse);

D.h. die Debug-Infos in einem Array sammeln und als Attribut ans Json-Objekt kleben. Das setzt natürlich voraus, dass die technische Übertragung soweit funktioniert. Wenn serverseitig irgendwas crasht, so dass gar kein JSON zurückkommt, kannst Du immer noch die Echo-Zeile in der Write-Methode entkommentieren und die URL im Browser aufrufen (bzw. im Netzwerktrace des Browsers gucken was zurückkommt, wenn Du einen POST Request brauchst).

Rolf

--
sumpsi - posui - clusi