Problem mit file..() und preg_match()

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

  • Problem mit file..() und preg_match()

    Hallo ... ich hoffe hier kann mir weitergeholfen werden. Nen Freund von mir hat auch schon resigniert

    Hab nen Script in dem bestimmte Passagen aus ner externen Homepage ausgelesen werden sollen. Ich habs auch alles soweit endlich hinbekommen, das die Abfragen funktionieren und er die richtigen Sachen ausließt. Doch nun gibt es doch wirklich unterschiede bei der Funktion.

    Gibt 3 Arten wie es läuft bzw. net läuft.

    a) index.php + Kopie der externern Homepage lokal auf PC
    - funktioniert alles einwandfrei, er ließt alle Begriffe aus
    b) index.php lokal + URL auf externe Homepage
    - funktioniert nur 50%, ein Teil der Begriffe werden nicht angezeigt
    c) index.php online + URL auf externe Homepage
    - funktioniert 0%, keinerlei Suchergebnisse werden angezeigt.

    lokal: WinXP, Apache 2.0.51, PHP 5.0.2
    online: Linux, Apache xx, PHP 4.4.0-0.dotdeb.0

    Freund meinte schon, eventl. Unterschiede in der php.ini, was wohl immernoch sein kann, wüßte aber net was. Er meinte eventl. "safe-mode". lokal is der Off und online is der On.

    Hier noch die Codepassagen:

    PHP-Code:
    $file file_get_contents('./datei.html oder http://server/datei.html');
    preg_match("!(Status:.*)(online|offline)
    (.*zuletzt:)(.*[0-9]{2}:[0-9]{2} uhr)
    (.*zuletzt)!is"
    ,$file,$result_status);
    preg_match("!(Geburtstag:.*)([0-9]{2}.[0-9]{2}.[0-9]{2} 
    \([0-9]{2}\))!is"
    ,$file,$result_age);

    echo 
    $result_status[2].', zuletzt '.$result_status[4];
    echo 
    'Geburtstag: '.$result_age[2]; 
    Woran könnte das liegen ? Gebt Vorschläge oder gleich ne Lösung Thx

    *edit*

    Er gibt mir bei der Version b) gibt er mir an das die Teile die nicht ausgelesen werden an "Notice: Undefined offset: 2 in H:\...."
    Was heißt das ?! Und warum funktionierts in Verson a)
    Zuletzt geändert von Deadman; 25.10.2005, 23:45.
    PHP-Code ? Funktionalität zählt ... Aussehen ist zweitrangig ... ist doch bei Frauen genauso oder ?

  • #2
    Erster (und wohl wichtigster) Vorschlag : Brech die Zeilen in deinem Posting um. Links- rechtsscrollen wird hier nicht so bewundert

    Zu deinem eigentlichen Prob : Sorry, keine Ahnung

    Kommentar


    • #3
      Hallo, ich würd dir gerne helfen, doch verstehe ich die Problematik wohl nicht richtig. Was meinst du mit "index.php lokal + link auf externe Homepage". Überhaupt verstehe ich nicht wirklich was du da aufzählst.
      Weiter: Was für Begriffe werden wo nicht gefunden? Redest du vom result vom preg_match? Wenn ja, welche Ergenisse werden nicht angezeigt.
      Gibt es ausführlichere Fehlermeldungen? Bitte posten dann.
      Und zuletzt würde vielleicht noch die URL der Seite, die ausgelesen werden soll, helfen (Das Einverständnis des Besitzers für dein Vorhaben setze ich einfach mal voraus) um etwaige RegExp Strukturen zu korrigieren.

      Also, bitte etwas detailierter die ganze Sache.
      In diesem Sinne - bis demnächst.

      fackel


      P.S.: Vielleicht hilft das ja schon weiter: In manchen Konfigurationen von PHP ist es nicht erlaubt externe Dateien mit Hilfe von file_get_contents() aufzurufen, lediglich lokale (auf dem Hostsystem liegende) Dateien funktionieren dann. Das kannst du entweder in der php.ini ändern, oder mit fsockopen() arbeiten.
      Zuletzt geändert von fackelkind; 26.10.2005, 06:24.
      54 68 65 72 65 20 61 72 65 20 6F 6E 6C 79 20 31 30 20 74 79 70 65 73 20 6F 66 20 70 65 6F 70 6C 65 20 69 6E 20 74 68 65 20 77 6F 72 6C 64 3A A 54 68 6F 73 65 20 77 68 6F 20 75 6E 64 65 72 73 74 61 6E 64 20 62 69 6E 61 72 79 2C 20 61 6E 64 20 74 68 6F 73 65 20 77 68 6F 20 64 6F 6E 27 74

      Kommentar


      • #4
        Darfst du gemäss php.ini auf deinem Online Space URL's öffnen ? Prüfe mal die php.ini nach dem Eintrag allow_url_open und schau ob er auf on oder off steht.

        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Original geschrieben von fackelkind
          P.S.: Vielleicht hilft das ja schon weiter: In manchen Konfigurationen von PHP ist es nicht erlaubt externe Dateien mit Hilfe von file_get_contents() aufzurufen, lediglich lokale (auf dem Hostsystem liegende) Dateien funktionieren dann. Das kannst du entweder in der php.ini ändern, oder mit fsockopen() arbeiten. [/B]

          Das war es, was ich meinte ...
          54 68 65 72 65 20 61 72 65 20 6F 6E 6C 79 20 31 30 20 74 79 70 65 73 20 6F 66 20 70 65 6F 70 6C 65 20 69 6E 20 74 68 65 20 77 6F 72 6C 64 3A A 54 68 6F 73 65 20 77 68 6F 20 75 6E 64 65 72 73 74 61 6E 64 20 62 69 6E 61 72 79 2C 20 61 6E 64 20 74 68 6F 73 65 20 77 68 6F 20 64 6F 6E 27 74

          Kommentar


          • #6
            @fackelkind
            Sorry zu ungenau gelesen und zu schnell gepostet

            Gruss

            tobi
            Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

            [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
            Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

            Kommentar

            Lädt...
            X