Erstellungs- / Änderungsdatum von Remote-Dateien

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

  • Erstellungs- / Änderungsdatum von Remote-Dateien

    Hallo erstmal
    Mensch, ich habe mich jetzt schon überall durchgewühlt - Google, PHP.net, Forensuche, ... aber ich finde nirgendswo etwas, was mir wirklich verständlich hilft

    Ich versuche, eine Bilddatei meiner WebCam (die aber auf einem anderen Server liegt und dort leider auch liegen bleiben muss!) auf ihr Erstellungs- oder Änderungsdatum zu prüfen und - sollte das Bild zu alt sein - automatisch auf eine Offline-Seite weiterzuleiten...

    Bis jetzt sieht das so aus...
    PHP-Code:
    <?PHP
    $cam 
    "http://people.freenet.de/hfserver/rghcam1.jpg";

    $secactual "360";   // Sekunden, die das Bild "aktuell" ist
    $time time();

      
    $check = @fopen($cam,"r");
      if(
    $check){
         
    $lastrenew filemtime($cam);
         if(
    $time<=$lastrenew+$secactual){
            include(
    "cam1.php");
         } else {
            include(
    "offline.php");
         }
      } else {
         include(
    "offline.php");
      }
    ?>
    Zuerst prüfe ich also, ob überhaupt ein Bild da ist und dann möchte ich überprüfen, ob das Bild noch aktuell ist... Leider ist aber die Funktion -filemtime- und alle ähnlichen aber nicht für Remote-Dateien verwendbar.


    Diesen Tipp bekam ich bereits aus einem anderen Forum - kann aber als Anfänger nicht viel damit anfangen...

    Zitat von goth:

    ... entweder über eine Socketverbindung eine HEAD-Request an den Server und schauen was im Response-Header "Last-Modified" steht ...

    oder ... ab PHP-Version 4.3.0 ... mit fopen() / stream_get_meta_data() ... allerdings ist dann die Datei auch schon geladen ...

    vor PHP-Version 4.3.0 könnte auch fopen() / socket_get_status() gehen ... allerdings liefert die meines Wissens nur die ersten 4 Response-Header-Werte ... auch hier der Nachteil das die Datei dann schon geladen ist ...
    Für jeden gedanklichen "Anstups", den ich verstehen kann , oder direkt einen Code bin ich total dankbar!

    Euers sunworker
    Zuletzt geändert von ; 11.04.2006, 14:46.

  • #2
    also ssl scheint nicht zu klappen, habe ich gerade ausprobiert. vielleicht hilft dir das weiter.

    setz dann mal ein phpinfo(), und überprüfe das mit dem, was oben im link steht. möglicherweise fehlen dir schlichtweg die rechte.

    gruß
    peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      Also auf der Seite, auf der das obige Script augeführt wird hab ich die Rechte auf jeden Fall, aber auf dem Freenet.de-Server (wo die Bilddatei liegt) hab ich keine PHP-Ausführrechte und daran kanns gut liegen...

      Kann man die "Standard-Funktionen" nicht umgehen wie es goth im Zitat oben angedeutet hat? Is wirklich wichtig und das sollte doch eigentlich hinzubiegen sein

      Grüße, sunny

      Kommentar


      • #4
        Re: Erstellungs- / Änderungsdatum von Remote-Dateien

        Original geschrieben von sunworker
        Diesen Tipp bekam ich bereits aus einem anderen Forum - kann aber als Anfänger nicht viel damit anfangen...
        Und was sollen wir mit dieser Aussage anfangen können?

        Stichworte wurden genannt - also informiere dich darüber.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          wenn du nicht das recht hast, dateien auf dem server zu öffnen, dann kannst du da nicht viel machen. kann ich mir bei einem billig-server auch nicht vorstellen.

          gruß
          peter
          Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
          Meine Seite

          Kommentar


          • #6
            @wahsaga: gut gelaunt heute? sry dass nicht alle so bewandelt sind wie andere...
            aus den tipps kann ich entnehmen, dass ich erstmal die datei per fopen öffnen soll - soweit verstanden
            das was da raus kommt jage ich dann durch die funktion "stream_get_meta_data()" und/oder "socket_get_status()" denke ich mal... aber wie kann ich dann daraus die last_modified lesen?

            das folgende script (was ich von php.net habe) geht bei mir aber z.B. nicht..
            PHP-Code:
            $last_modified stream_last_modified('http://www.php.net/news.rss');
            if (!
            is_null($last_modified))
               if (
            $last_modified time()-3600//Older than an hour
                 
            echo 'URL is older than an hour.';
               else
                 echo 
            'URL is fairly new.';
            else
               echo 
            'Invalid URL!'
            @Kropff: ich werd mal schaun ob ich dafür n anderen bekomme, aber freenet bietet mir nun mal unbegrenzt traffic an was bei ner minütlich aktualisierenden webcam nicht schlecht wäre und ich in sachen dateihosting mit freenet am besten klarkomme... werd mich aber mal umschaun - leider hat funpic ja ne traffic"klau"sperre drin ^^

            mfg, sunworker

            Kommentar

            Lädt...
            X