Ajax Form Tracker

Switch to English

Dieses Tool kann die Eingaben in ein Online-Formular mitloggen, ohne dass das Formular abgeschickt wird. Damit l‰sst sich beispielsweise herausfinden, was Besucher in einem Formular machen, bevor sie es abschicken. Ich persˆnlich habe diese kleine Anwendung geschrieben, da ich auf einer meiner Webseiten relativ viele Besucher hatte, die zwar das Registrierungsformular ausgef¸llt haben, die nachgelagerte Payment-Seite dann abe rnicht abgeschickt haben. Durch die Analyse des Userverhaltens konnte ich feststellen, dass viele User bis zur Eingabe der Security-ID ihrer Kreditkarte kamen, dort jedoch h‰ngen blieben. Eine weiterf¸hrende Erkl‰rung zur 3stelligen Security-ID konnte die endg¸ltige Conversionrate ein wenig steigern.

Download

formtracker_001.zip (V0.01)

Formulare mit AJAX tracken

Das "Programm" besteht aus einem simplen JavaScript-Teil, der "onchange"-Events an jedes Input-Element eines Formulars h‰ngt. Wird dieses Event durch eine User-Eingabe getriggert, wird per XMLHttpRequest ein HTTP-Aufruf get‰tigt, der auf dem Server ein Logging-Script aufruft. Dieses Script ist im ZIP als PHP-Script realisiert, l‰sst sich jedoch in jeder beliebigen Sprache programmieren. Der XMLHttpRequest-Aufruf ¸bergibt an das Tracking-Script die folgenden Parameter.

Das PHP Beispielscript schreibt eine CSV-Datei. Diese Datei l‰sst sich in der erten Zeile des Codes anpassen:

$logfile = "formlog.txt";

Die einzelnen Eintr‰ge in diese CSV-Datei sehen folgenderma?en aus:

Datum;IP-Adresse des Users;URL der Formularseite;Formularname;Input Name;Input Value;

Installation

  1. formtracker.php auf den Webserver kopieren
  2. formtracker.js auf Webserver kopieren
  3. formtracker.js in Seite includen, die das zu trackende Formular enth‰lt:
    <script type="text/javascript" src="/formtracker.js"></script>
  4. Setup-Code f¸r den Tracker direkt vor dem <body>-Tag der Seite einbauen:
    <script language=Javascript>
    setup('formName', 'http://hans-schneider.de/formtracker.php') ;
    </script>

    Als erster Parameter wird der Name (<form name="formName"...) des Formulars eingesetzt, als zweiten die URL des Tracking-Scripts auf dem Server.

Nun sollten in der CSV-Datei auf dem Webserver die Logeintr‰ge auftauchen.
Die Javascript-Funktion ¸berschreibt im Moment die onchange-Trigger der Input-Elemente des Formulars! In Formularen, die schon onchange-Funktionen enthalten sollte das Script im Moment nicht angewendet werden. Bei vielen Besuchern kann die Log-Datei au?erdem sehr schnell sehr gro? werden.
Nach dem Einbau des Scripts muss unbedingt gepr¸ft werden, ob das Formular noch in den wichtigsten Browsern funktioniert! F¸r etwaige Probleme oder Verluste ¸bernehme ich keinerlei Haftung. Die Software wird auf eigene Gefahr eingesetzt.

Auswertung

Die Auswertung kann sich je nach Besucheraufkommen recht aufw‰ndig gestalten. Prinzipiell eignet sich die Funktion "Pivot-Tabelle" von Excel gut f¸r die Auswertung. Es handelt sich dabei um eine stark vereinfachte Variante eines Datacubes, wie er im Data-Warehousing (¸brigens ein Thema in der sich ein SEO wirklich einlesen sollte ;) eingesetzt wird. Daten lassen sich anhand von definierbaren Parametern gruppieren und segmentieren. Mit Pivot-Tabellen l‰sst sich die generierte CSV-Datei z.B. nach Datum und User-IP gruppieren, um die Eingaben einzelner User nachvollziehen zu kˆnnen.

Kontakt

Bei Problemen kˆnnen Sie mich gerne per Email kontaktieren

Changelog

TODO