dedlfix: fancybox - Beitrag bearbeiten

Beitrag lesen

Tach!

In der Datenbank kommt das Update einfach nicht an, Fehler erhalte ich ebenfalls keine, die Logfiles sind leer.

Das war schon mal ein Anfang, aber das ist nur der erste kleine Schritt, den ein Programmierer mehr tun muss als ein Anwender. Der nächste ist, den Fehler einzukreisen. Dazu muss man debuggen.

Es gibt eine Nutzeraktion und von der aus soll eien Folge von Anweisungen etwas tun. Also verfolgt man nun diese Kette. Wenn Javascript im Spiel ist, geht man in die Entwicklerwerkzeug des Browsers und setzt Breakpoints an die strategisch wichtigen Stellen. Die Ausführung muss dort anhalten (oder man hat schon eher ein anderes Problem) und dann kann man die Variableninhalte im einfachsten Fall mit Mausdraufhalten untersuchen.

Ist da alles ok, dann geht es weiter auf den Server. Da ist unter PHP üblicherweise kein Debugger verfügbar. Man muss sich die Werte geeignet ausgeben, zum Beispiel mit var_dump().

Man kann auch erstmal generell das Zusammenspielen von Client und Server testen, indem man das was der Client hinschickt wieder zurückshickt, vielleicht auf einfache Weise verändert (wie wärs mit strrev()?), damit man sieht, dass der Server was gemacht hat. Im zweiten Schritt kann man dann die komplexe eigentliche Aufgabe durchführen lassen.

Debuggen ist das ungeliebte Kind des Programmierers, aber das ist eine esentielle Technik, die man können muss, weil sie oftmals der einzige Weg zur fehlerfreien Lösung ist. Es kann natürlich immer noch sein, dass du an einer Stelle nicht weiterkommst, aber dann weißt du wenigstens schon, wo diese Stelle ist und ersparst den Helfern eine Menge Arbeit.

dedlfix.