Php Script Hilfe

Einklappen
X
Einklappen
+ weitere Optionen
Beiträge
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Thomas Busek
    Free-Member
    • 20.05.2004
    • 3258

    #1

    Php Script Hilfe

    Hallo brächte bitte eine hilfe


    das ist ein Teil einer PHP seite die Automatisch alle IPs + Datum in eine File schreibt.
    Was ich nun brächte, wäre das sie nur die ip + Datum schreib wenn es sich um eine bestimmte oder mehrere bestimmte IP Adresse handelt.

    also quasi

    if 'REMOTE_ADRR" = XXX.XXX.XXX then....

    ich weiss also was ich will kann es aber nicht in die richtige Form bringen..kann mir da jemand helfen?!??!
    danke

    TOm

    <img src="pic.jpg"><?php

    include_once("classes.php");


    $ip = $_SERVER['REMOTE_ADDR'];
    $datum = date("d.m.Y.- H.i.s");


    $datenbank="<tr>
    <td>&nbsp;".$ip."</td>
    <td>&nbsp;".$datum."</td>
    </tr>";


    $fp=fopen("datenbank.html","a");
    flock($fp,2);
    fwrite ($fp,$datenbank);
    flock($fp,3);
    fclose($fp);



    ?>
  • Michael Stumpf
    Free-Member
    • 06.04.2003
    • 1931

    #2
    AW: Php Script Hilfe

    Zum Beispiel sowas:

    if($ip == "123.123.123.123")
    {

    }

    Dabei ist wichtig: Zwei Gleichzeichen (weil Vergleich und keine Zuweisung), Klammern nicht vergessen, ansonsten ist das ganz einfach :-)

    Kommentar

    • Thomas Busek
      Free-Member
      • 20.05.2004
      • 3258

      #3
      AW: Php Script Hilfe

      Zitat von Michael Stumpf Beitrag anzeigen
      Zum Beispiel sowas:

      if($ip == "123.123.123.123")
      {

      }

      Dabei ist wichtig: Zwei Gleichzeichen (weil Vergleich und keine Zuweisung), Klammern nicht vergessen, ansonsten ist das ganz einfach :-)

      if($ip == "xx.x.x..x.x.x")
      {

      $fp=fopen("datenbank.html","a");
      flock($fp,2);
      fwrite ($fp,$datenbank);
      flock($fp,3);
      fclose($fp);

      }

      so?!
      so geht es mal nicht

      Kommentar

      • Dirk Wagner
        Free-Member
        • 27.03.2003
        • 1784

        #4
        AW: Php Script Hilfe

        Hast Du denn dem Benutzer unter dem Dein Webserver läuft Schreibrechte im Verzeichnis eingeräumt?

        Wenn Du Dir nach dem "if" die Variable $Datenbank anzeigen läßt, wirst Du sehen, das DA alles so ist, wie es sein soll...

        Ciao

        Dirk

        Kommentar

        • Thomas Busek
          Free-Member
          • 20.05.2004
          • 3258

          #5
          AW: Php Script Hilfe

          Zitat von Dirk Wagner Beitrag anzeigen
          Hast Du denn dem Benutzer unter dem Dein Webserver läuft Schreibrechte im Verzeichnis eingeräumt?

          Wenn Du Dir nach dem "if" die Variable $Datenbank anzeigen läßt, wirst Du sehen, das DA alles so ist, wie es sein soll...

          Ciao

          Dirk
          habe ich!
          geht leider trotzdem nicht

          Kommentar

          • Dirk Wagner
            Free-Member
            • 27.03.2003
            • 1784

            #6
            AW: Php Script Hilfe

            Zitat von THomas Busek Beitrag anzeigen
            habe ich!
            geht leider trotzdem nicht
            Welche Rechte hat denn datenbank.html?

            Ich hab Deinen Code gerade mal auf den Server gelegt - und es klappt...

            Ciao

            Dirk

            Code:
            <tr>
            <td>&nbsp;84.162.117.137</td>
            <td>&nbsp;22.11.2007 - 14:15:26</td>
            </tr><tr>
            <td>&nbsp;84.162.117.137</td>
            <td>&nbsp;22.11.2007 - 14:15:55</td>
            </tr><tr>
            <td>&nbsp;84.162.117.137</td>
            <td>&nbsp;22.11.2007 - 14:15:56</td>
            </tr>

            Kommentar

            • Michael Stumpf
              Free-Member
              • 06.04.2003
              • 1931

              #7
              AW: Php Script Hilfe

              Ich vermute auch irgendein Rechte-Problem. Eigentlich sollte das so laufen

              Kommentar

              • ehemaliger Benutzer

                #8
                AW: Php Script Hilfe

                Setz die Zeile mal hinter dem include_once(...); ein:
                Code:
                error_reporting(E_ALL);
                und poste mal die Fehlermeldung. Und eine Definition von "Geht nicht" wäre auch hilfreich

                Kommentar

                • Party
                  Free-Member
                  • 08.03.2006
                  • 267

                  #9
                  AW: Php Script Hilfe

                  Moin

                  Ne der Code klappt.
                  Bei mir hat die datenbank.html folgende Rechte : -rw-rw----
                  also Besitzer und Gruppe jeweils : read und write



                  Gruß Party

                  Kommentar

                  • Ralf Canis
                    Free-Member
                    • 20.04.2003
                    • 616

                    #10
                    AW: Php Script Hilfe

                    How about

                    Code:
                    <?php
                    $iplist = file ('ips_to_log.dat');
                    $myip = $_SERVER['REMOTE_ADDR'];
                    foreach ($iplist as $ip) {
                        $ip = rtrim($ip);
                        if ($ip && $ip[0] != '#' && checkIP($ip, $myip)) {
                            $datum = date("d.m.Y. - H.i.s");
                            $datenbank = "<tr><td>&nbsp;".$myip."</td><td>&nbsp;".$datum."</td></tr>\n";
                            $fp = fopen("datenbank.html", "a");
                            flock($fp, 2);
                            fwrite($fp, $datenbank);
                            flock($fp, 3);
                            fclose($fp);
                            break;
                        }
                    }
                    
                    function checkIP ($check, $ip) {
                        if ($check == $ip) {
                            return true;
                        }
                        if (ereg("-", $check)) {  
                            $range = explode("-", $check);
                            $long_ip = ip2long($ip);
                            if (ip2long($range[0]) <= $long_ip && $long_ip <= ip2long($range[1])) {
                                return true;
                            }
                        }
                        return false;
                    }
                    ?>
                    in ips_to_log.dat könnte zB stehen:

                    Code:
                    # einzelne ip oder von-bis
                    # local networks
                    192.168.0.0-192.168.255.255
                    172.16.0.0-172.31.255.255
                    10.0.0.0-10.255.255.255
                    # real ip
                    1.2.3.4
                    47.11.47.11
                    Tipp zur Fehlersuche Thomas: wenn Dein gepostetes Script funktioniert (also alle speichert), dann auch die mit if(...) geklammerte Version oben.
                    Wenn das Original schon nicht läuft -> Webmaster fragen. Wenn nur mit der if(...) Änderung nicht -> Tippfehler ;-)

                    Ralf

                    Kommentar

                    Lädt...