Tom1tk: Datei öffnen

!ollaH

Kann es sein, dass mein Server einen extrenen Dateizugriff via fopen() unterbindet? Wenn ja, wo kann ich das sehen?

Wenn nein, warum funktioniert das hier nicht?

$filename = "http://www.domain.de/verz/datei.php";
$handle = fopen ($filename, "r");
$contents = fread ($handle, filesize ($filename));
print $contents;
fclose ($handle);

Sollte doch eigentlich die datei.php ausgeben, oder? Geht bei mir nicht. Sobald ich aber über
$filename = "../verz/datei.php";
drauf zugreife klappt das, allerdings nicht geparst, sondern ich sehe den kompletten PHP-Code. Wie kann ich die geparste PHP-Datei auslesen? mit File() klappt das, aber da kann ich keine SESSION-Vars mitschicken...

Thanx
Tom1tk

  1. hi,

    Kann es sein, dass mein Server einen extrenen Dateizugriff via fopen() unterbindet? Wenn ja, wo kann ich das sehen?

    konfigurationsoption allow_url_fopen, z.b. per phpinfo() checken.

    gruss,
    wahsaga

    1. !ollaH

      konfigurationsoption allow_url_fopen, z.b. per phpinfo() checken.

      Das Ding steht im Local- und master-Value auf 1 (on) und es geht trotzdem nicht!

      Warum?
      Ich hab die globals auf off gestellt (local). Kann das damit zusammenhängen?

      Greets Tom1tk

  2. Hallo!

    Wenn nein, warum funktioniert das hier nicht?

    $filename = "http://www.domain.de/verz/datei.php";
    $handle = fopen ($filename, "r");
    $contents = fread ($handle, filesize ($filename));
    print $contents;
    fclose ($handle);

    Hast Du mal http://de3.php.net/filesize? Jedenfalls hast Du wenn anscheinend den letzten Satz überlesen.

    Grüße
    Andreas

    1. !ollaH

      Hast Du mal http://de3.php.net/filesize? Jedenfalls hast Du wenn anscheinend den letzten Satz überlesen.

      Das geht auch nicht, wenn ich EOF angebe.

      Greets Tom1tk

      1. aloha heja he

        Hast Du mal http://de3.php.net/filesize? Jedenfalls hast Du wenn anscheinend den letzten Satz überlesen.

        Das geht auch nicht, wenn ich EOF angebe.

        Herr, lass etwas <bitte selber einsetzen> regnen ;-)

        Der letzte Satz in der BESCHREIBUNG zu filesize():

        " Diese Funktion ist nicht für remote Dateien geeignet, die zu prüfende Datei muss über das Dateisystem des Servers verfügbar sein."

        man liest sich
        Wilhelm

        1. Das geht auch nicht, wenn ich EOF angebe.
          Herr, lass etwas <bitte selber einsetzen> regnen ;-)

          bitte selber einsetzen = "Freundlichkeit";

          Du selbst schreibst ja, dass die Datei über das Dateisystem verfügbar sein muss, wenn filesize() verwendet wird!!!!!!!!!

          Unter http://de3.php.net/manual/de/function.fopen.php steht, dass man Dateien auch mit fopen via http-Anfrage öffen kann.

          Wie kann ich die dann einlesen, wenn ich kein EOF zur Verfügung habe?

          Greets Tom1tk

          1. hi,

            Wie kann ich die dann einlesen, wenn ich kein EOF zur Verfügung habe?

            du möchtest dir noch mal ansehen, was die beschreibung von fread() über den rückgabewert dieser funktion aussagt.

            gruss,
            wahsaga

            1. So.

              So funzt das wenigstens mal, aber sobald ich meine Session-Var dran hänge, geht gar nix mehr. Es bleibt ein weißer Bildschirm und eine unendlich lange Ladezeit.

              ###So funktionierts...########
              $filename = "http://irgendwas.de/ver/datei.php";

              So geht nimmer...

              $filename = "http://irgendwas.de/ver/datei.php?".$_SERVER["HTTP_COOKIE"];

              ####################################################

              $file = fopen ($filename, "r");
              if (!$file) {
              echo "<p>Datei konnte nicht geöffnet werden.\n";
              exit;
              }
              while (!feof ($file)) {
              $line = fgets ($file, 1024);
              print $line;

              }
              fclose($file);

              ###################################################

              Hat da irgendjemand Erfahrungen mit fopen() oder file() im Zusammenhang mit Sessions? Ich möchte auf meinem eigenen Server Dateien öffnen und auslesen, aber SESSION-abhängig.

              Greets Tom1tk

            2. !ollaH

              noch was:

              Es sieht so aus, als würde das Script in einer Endlosschleife hängen. Der Ladebalken unter zappelt wie blöde hin und her....

              Greets Tom1tk

              1. !ollaH

                Hallo?

                Alle sprachlos? Zu schwierig? Ich weiß leider nicht mehr weiter (also mit dem Script)....

                Bin für alle Hilfen dankbar!

                Wie kann am man eine Datei automatisch öffnen und dabei die SESSION-Vars mit benutzen?

                Thanx Tom1tk

                1. Alle sprachlos? Zu schwierig? Ich weiß leider nicht mehr weiter (also mit dem Script)....

                  Wie kann am man eine Datei automatisch öffnen und dabei die SESSION-Vars mit benutzen?

                  Fuer was soll Deine Variable $_SERVER["HTTP_COOKIE"] eigentlich gut sein?

                  Was treibt datei.php?

                  Was bezweckst Du eigentlich?

                  Existiert eine Datei "datei.php?".$_SERVER["HTTP_COOKIE"]"? Wohl Nein.

                  Wenn Du anhand der Variable eine bestimmte Datei lesen willst, ist dies der falsche Ansatz.

                  Apropos: Sessionwerte stehen in $_SESSION['..] ;-)

                  Gruesse
                  Wilhelm

                  Ich habe den Thread versehentlich ausgeblendet, deswegen Name mit |