AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein [php] simpleste lese-schreib Operationen und schleifen :(
Thema durchsuchen
Ansicht
Themen-Optionen

[php] simpleste lese-schreib Operationen und schleifen :(

Ein Thema von Norbert987 · begonnen am 21. Mär 2010 · letzter Beitrag vom 21. Mär 2010
Antwort Antwort
Norbert987

Registriert seit: 27. Nov 2003
Ort: Aachen
74 Beiträge
 
Delphi 7 Professional
 
#1

[php] simpleste lese-schreib Operationen und schleifen :(

  Alt 21. Mär 2010, 14:29
Hallo Zusammen,

ich bin dabei, mir ein php Skript zu schreiben, welches mich bei Änderungen von Homepages auf dem Handy benachrichtigt. Mit einer zu überwachenden Homepage läuft das problemlos, sind es mehrere gibt es Probleme. Es wäre toll, wenn jemand mal drüber schauen könnte:

Code:
<?php
  include('ProwlPHP.php');
 
  $seiten_file = file("seiten.txt");
 
  for ($i=0; $i<count($seiten_file); $i++) {
    // erstelle neue md5
    echo $seiten_file[$i]."
";
   
    $page = $seiten_file[$i];
    $md5  = md5(file_get_contents($page));
    $tmp = parse_url($seiten_file[$i]);
    $host = $tmp["host"];
   
    echo "host: ".$host."
";
    echo " md5: ".$md5."
";

    // lese alte md5
    $md5_file = fopen("md5/".$host.".md5", "r+");
    while (!feof($md5_file)) {
      $old_md5 = fgets($md5_file, 1024);
    }
   
    echo " old: ".$old_md5."
";

    // pushe, falls old_md5 != md5
    if ($old_md5 == $md5) {
      echo "Nothing to do: ";
    } else {
      echo "Was updated:  ";
      fseek($md5_file, 0);
      fwrite($md5_file, $md5);
      $prowl = new Prowl('<userid>');
      $prowl->push(array('application'=>'Homepage Watch',
                         'event'=>'Information',
                         'description'=>"Es gibt neue Informationen auf ".$host,
                         'priority'=>0
                         ));
      var_dump($prowl->getError());
    }
    echo $host."

";
    fclose($md5_file);
  }

?>
In seiten.txt werden pro Zeile eine zu überwachende URL eingegeben, hier sind 2 Zeilen drin.

Probleme sind folgende:
[Zeile 11] $md5 = md5(file_get_contents($page));
gibt folgendes aus: Warning: file_get_contents(http://www.winfuture.de/ ) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in /var/www/web6/html/iPhone/check2.php on line 11

Tausche ich nun beide Zeilen, gibt wieder das erste Proleme. Lasse ich die For-Schleife bei 1 beginnen, fehlt natürlich die 0te Zeile. Lasse ich diese frei, kommt der gleiche Fehler wieder

[Zeile 19] $md5_file = fopen("md5/".$host.".md5", "r+");
öffne ich die Datei mit "w+", kann er schreiben aber nicht lesen, öffne ich sie mit "r+", öffnet er sie, kann sie aber nicht anlegen, obwohl laut Doku "w+" anlegen, schreiben und lesen bedeuten sollte - was mache ich falsch?

Vielen Dank, Tobias
  Mit Zitat antworten Zitat
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#2

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 16:24
Zitat:
öffne ich die Datei mit "w+", kann er schreiben aber nicht lesen, öffne ich sie mit "r+", öffnet er sie, kann sie aber nicht anlegen, obwohl laut Doku "w+" anlegen, schreiben und lesen bedeuten sollte - was mache ich falsch?
Ich kenn zwar die genaue syntax dabei nicht, aber r ist lesen w ist schreiben und rw ist beides.

Probiers mal.
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Norbert987

Registriert seit: 27. Nov 2003
Ort: Aachen
74 Beiträge
 
Delphi 7 Professional
 
#3

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 16:34
Nee, leider ist "rw" nicht möglich, die Seite wird nicht zuende geladen (hab die Parameter von hier).
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 16:48
Schonmal die Fehlerausgabe aktiviert?
Code:
error_reporting(E_ALL | E_STRICT);
ini_set("display_errors", 1);
  Mit Zitat antworten Zitat
Norbert987

Registriert seit: 27. Nov 2003
Ort: Aachen
74 Beiträge
 
Delphi 7 Professional
 
#5

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 18:20
Hab beide Zeilen am Anfang und am Ende eingefügt, aber die Ausgabe bleibt die gleiche. Was muss ich damit machen?
  Mit Zitat antworten Zitat
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#6

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 18:22
Da wird dir dann angezeigt was falsch ist.
Da sind dann die Fehler sichtbar
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Norbert987

Registriert seit: 27. Nov 2003
Ort: Aachen
74 Beiträge
 
Delphi 7 Professional
 
#7

Re: [php] simpleste lese-schreib Operationen und schleifen :

  Alt 21. Mär 2010, 18:54
Danke, leider kann nicht nichts anderes feststellen:
Code:
Warning: file_get_contents([url]http://www.winfuture.de/[/url] ) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.0 404 Not Found in /var/www/web6/html/iPhone/check2.php on line 11"
bleibt, es ändert sich halt die Zeilennr. und wenn sich die Seite nicht laden lässt, kann ich auch nichts anderes sehen.

öffne ich die Datei mit $md5_file = fopen("md5/".$host.".md5", "w+"); kommt folgendes:
host: www.winfuture.de
md5: e914e573096ffac00f0f815a6e4c90be
old:
Was updated: string(19) "Request Successful."

öffne ich sie mit "r+", habe ich bei old auch einen MD5 hash.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:03 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz