Tracker-System per Bild

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Tracker-System per Bild

    Hi Leute,
    ich habe ein kleines Problem.

    Ich habe vor ein Tracker-System zu basteln, also ein System das Besucher zählt und z.B. Referer, Browser usw. auflistet. Das System soll auf Log-Dateien basieren. Weiterhin sollen auch html-Dateien geloggt werden können, sodass der User keine PHP-Dateien schreiben muss.

    Auf den Seiten die geloggt werden sollen binde ich eine JS-Datei ein ([COLOR=firebrick]tracker.js[/COLOR]), die eine PHP-Datei als Bild lädt ([COLOR=firebrick]stat.php[/COLOR]). Soweit ohne Probleme.

    Jetzt soll dieses eingebundene Bild in eine Log-Datei ([COLOR=firebrick]/log/besucher.log[/COLOR]) die aufgenommen Daten eintragen. Und das funktioniert nicht.

    Wenn ich jedoch die stat.php alleine öffne bzw. per include rangehe funktioniert es. Da ich aber auch .htm-Dateien tracken will, ist der include-Befehl Schwachsinn.

    Der Code der stat.php:
    PHP-Code:
    $database "log/besucher.log";

    $accessdb fopen $database "a+" );
    fwrite $accessdb "test*");
    fclose $accessdb ); 
    Der Code der tracker.js (fehlerfrei):
    Code:
    function GetStats()
    {
       cookieEnabled = navigator.cookieEnabled;    // Cookies
       userAgent     = navigator.userAgent;        // Browser-Infos
       java          = navigator.javaEnabled();    // JavaScript
       referer       = document.referrer;           // Referer	 
       
       url = "stat/stat.php?cookie="+cookieEnabled+"&agent="+userAgent+
    "&java="+java+"&referer="+referer;
       str = "<img src='"+url+"' alt='counter' height='1' width='1'>";
       tracker.innerHTML=str;
    }
    Der Code der index2.htm (fehlerfrei):
    Code:
    <script language="JavaScript" src="stat/include/tracker.js" 
    type="text/javascript"></script>
    ...
    <span id="tracker"><img src="stat/img/pixel.gif" height="1" width="1" 
    onLoad="GetStats()"></span>
    Kann ein Bild überhaupt einen Datei-Eintag vornehmen?
    Danke für die Hilfe
    EDIT:
    by TobiaZ: Code umgebrochen.
    Zuletzt geändert von TobiaZ; 17.02.2005, 16:34.
    visit bepeppered.net

  • #2
    testausgaben gemacht?
    bild wird angeigt?

    uf den Seiten die geloggt werden sollen binde ich eine JS-Datei ein (tracker.js),
    Wozu?

    Kann ein Bild überhaupt einen Datei-Eintag vornehmen?
    Ähm, ja. Du hast dein System offensichtlich selbst noch nicht verstanden!

    Kommentar


    • #3
      hm ich binde die tracker.js ein, damit ich neben den normalen Auswertungen auch die Auswertung von Auflösung, Farbtiefe etc. machen kann. Glaube nämlich PHP kann das nicht und damit muss ich auf JavaScript zurückgreifen.

      Hm aber ich merk jetzt das wirkliche Problem. Das anzeigen des Bildes. Binde ich normal das Bild per
      Code:
      <img src="stat/stat.php">
      ein und ändere ich meine stat.php in:
      PHP-Code:
      $image imagecreate(300,150);
      $farbe_body=imagecolorallocate($image,222,222,222);
      imagegif($image); 
      müsste doch eigentlich eine Anzeige kommen, oder? Es kommt nämlich nichts. Hab aber die php_gd2 eingebunden... Hm...
      visit bepeppered.net

      Kommentar


      • #4
        Original geschrieben von cag-live
        [...] müsste doch eigentlich eine Anzeige kommen, oder? Es kommt nämlich nichts. Hab aber die php_gd2 eingebunden... Hm...
        - content-type-header fehlt
        - sicher, dass deine GDlib-version gif erstellen unterstützt?


        und btw: threads zum dynamischen erstellen von bildern mittels GD-lib gibts hier eine ganze menge - ich schlage vor, du nutzt die suchfunktion und liest dich ein wenig ein, damit wir hier nicht wieder eine grundlage nach der nächsten durchkauen müssen ...
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Über Bilder-Erstellung mit Hilfe der GD-Bibo kenn ich mich eigentlich ziemlich gut aus und das ist ja auch nicht das Thema. Der Code hab ich schnell von selfphp rauskopiert ich test es mal mit header und als anderes Bild!
          mfg
          visit bepeppered.net

          Kommentar


          • #6
            Der Code hab ich schnell von selfphp rauskopiert
            Danke, der nächste bitte

            Kommentar


            • #7
              harrrrrrrrrrrrrrrrrrrrr.... ok, kann geclosed werden. Hatte Fehler in der Bilderzeugung. Header fehlte....
              &$§%§% selfphp

              naja danke trotzdem, wenns fertig is, schick ich euch nen link
              visit bepeppered.net

              Kommentar


              • #8
                da hatte der wahsaga wohl recht

                Kommentar


                • #9
                  CSV-Dateien bearbeiten

                  Hi Leute,

                  nochmal eine Frage für mein Tracker.
                  Die Daten werden in CSV-Dateien gerspeichert. Diese auszulesen bzw. zu erweitern ist kein Problem. Aber wie bearbeite ich eine Zeile. Soll heißen löschen und neues einfügen.

                  Danke
                  visit bepeppered.net

                  Kommentar


                  • #10
                    Datei komplett einlesen
                    Zeile bearbeiten
                    Datei speichern
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar


                    • #11
                      kannst bitte das genaue Script schreiben? Auslesen ist klar, aber wie überschreib ich eine Zeile?
                      visit bepeppered.net

                      Kommentar


                      • #12
                        Über den Index des Arrays

                        Wenn du die Datei in das Array $zeilen eingelesen hast, dann überschreibst du mit
                        PHP-Code:
                        $zeilen[5] = 'So einfach ist das'
                        die sechste Zeile
                        Ich denke, also bin ich. - Einige sind trotzdem...

                        Kommentar


                        • #13
                          ein weiteres Problem:
                          Wenn ich ein Bild einbinde, ist der Referer in dem Bild gleich der Datei die es einbindet. Somit liest das Script immer den Datei-Namen aus, der den Tracker einbindet.
                          Wie kann ich das Problem lösen?
                          visit bepeppered.net

                          Kommentar


                          • #14
                            Die Seite, auf der das Bild angezeigt wird, kann man auch als Parameter übergeben...

                            Hab ich zumindest mal gehört
                            Ich denke, also bin ich. - Einige sind trotzdem...

                            Kommentar


                            • #15
                              hm ok, werd ich nun machen. Hatte den Tracker versucht ohne JavaScript zu programmieren, halt mit einem einfach einbinden des Bildes.
                              Das Problem war halt, dass ich den Referer entweder per PHP oder per JavaScript bekomme.
                              Da das Tracker-System auch für html-Seiten sein soll und das Bild einen falschen Referer liefert bleibt halt nur JavaScript.
                              visit bepeppered.net

                              Kommentar

                              Lädt...
                              X