![]() Mailinglisten-Archive |
Hi Frank, Am Donnerstag, 8. Dezember 2005 08:17 schrieb Frank Rust: > gibt es irgend eine Standard M�glichkeit die Parameter die per POST > Request vom Browser �bermittelt werden in die Apache Logfiles zu > bekommen? eine Standardm�glichkeit ist mir nicht bekannt. Du m��test daf�r vermutlich ein eigenes Modul schreiben. Bei einem java-basierten Tomcat-Server w�re das sicherlich noch eine berrschbare Aufgabe. ;-) Au�erdem ist es ja so, da� mit POST eine Menge Daten �bergeben werden k�nnen, u.a. z.B. auch hochgeladene Dateien. Das alles generell ungefiltert zu loggen, macht sicherlich wenig Sinn. > Oder generell: kann ich Dinge in die Apache Logs vom PHP > aus schreiben? Z.B. Debugging ins error.log und Aufrufparameter > ins access.log? Theoretisch ja. Aber: Diese Logs haben fest definierte Formate und werden vom Apache selbst benutzt und i.d.R. von Werkzeugen wie LogRotate archiviert. Wo willst Du da POST-Daten reinschreiben? Generell w�rde ich auch von anderen Programmen automatisch generierte und geschriebene Dateien nicht mit eigenen Programmen �ndern. Aber anders herum wird ein Schuh draus: Schreibe doch mit PHP die POST-Daten ($_POST) des in Frage stehenden Formulars einfach in eine eigene, von Dir angelegte Datei. Das langt doch. Und derjenige, der Probleme hat, soll dann das Formular noch mal abschicken, w�hrend Du mit ihm am Telefon "h�ngst". Dann kannst Du sofort sehen, was Sache ist. > Ich habe leider immer wieder Leute hier auf meiner Webseite, die > behaupten alles richtig in die Formulare eingetragen zu haben und > trotzdem funktioniert es nie. Seltsamerweise funktioniert es f�r > mich immer, egal mit welchem Browser ichs probiere... Erstens mal kann es sein, da� es nicht am Browser, sondern an den von Dir vorausgesetzten Browsereinstellungen liegt (z.B. Javascript und/oder Cookies aktiviert, HTTP_REFERER wird gesendet), und zweitens k�nnen auch Firewalls und Proxies dazwischen h�ngen, die �rger machen. Von daher wird es sicherlich nicht reichen, die POST-Daten zu loggen. Du mu�t z.B. auch den Inhalt von $_SERVER dabei haben. Vielleicht f�llt Dir dann mehr auf. Eine dritte, etwas heikle M�glichkeit w�re, da� es an der Verst�ndlichkeit Deines Formulars bzw. der Auffassungsgabe der Benutzer liegt... Wei�t Du denn genau, ob die alles richtig machen? Oder macht Dein Formular bei einer Pr�fung der eingegebenen Daten alles richtig? Vielleicht verwehrt es ja bei bestimmten Eingaben, die eigentlich korrekt sind, bei fehlerhafter Pr�fung das Abschicken? Also Du m��test in den betreffenden F�llen mal genau kl�ren, welche Schritte die Anwender gemacht haben und wo was nicht funktioniert hat. Ich habe da schon die dollsten Dinge erlebt. Da kommst Du selbst als autodidaktischer Programmierer, der noch ein Bi�chen Bodenhaftung als Anwender hat, im Leben nicht drauf... ;-))) > Leider kann ich die Aussagen nicht ohne gr��eren Programmieraufwand > pr�fen, da die Daten per POST Request �bermittelt werden. Wieso nicht? :-) Einfach eine kleines Logging-Skript schreiben und mit php_auto_prepend als allerersten Programmcode in alle Seiten einbinden. Wenn POST gef�llt ist, wird was geschrieben, sonst nicht. Manche Aufgaben sind gar nicht so kompliziert, wenn man mal einen Augenblick einen Schritt zur�cktritt und sich das Ganze aus etwas Entfernung betrachtet. Vielfach gibt es eine verbl�ffend einfache L�sung. Man mu� sie nur finden. :-) Viele Gr��e Lutz
php::bar PHP Wiki - Listenarchive