Scherer: Include Funktion nicht mehr unter Windows?!

habe mir grade eben die aktuelle PHP version installiert und durfte jetzt feststellen, dass die include() funktion nicht mehr funktioniert.  hab ich einfach was falsch gemacht oder ist das der neue standard?

auf php.net steht auch was davon, aber ich kann das nicht glauben. kann man das irgendwie wieder reaktivieren oder muss ich jetzt alle möglichen seiten umprogrammieren?

scherer

  1. habe mir grade eben die aktuelle PHP version installiert und durfte jetzt feststellen, dass die include() funktion nicht mehr funktioniert.  hab ich einfach was falsch gemacht oder ist das der neue standard?

    auf php.net steht auch was davon, aber ich kann das nicht glauben. kann man das irgendwie wieder reaktivieren oder muss ich jetzt alle möglichen seiten umprogrammieren?

    Ich hab zwar nicht die neueste Version von PHP auf Windows installiert, aber die Angaben unter http://www.php.net/manual/en/function.include.php besagen, dass du per include() keine entfernten Dateien (also mit "http" oder "ftp") einbinden kannst. Alles andere (also das normale Einbinden einer lokalen Datei) sollte funktionieren. Die Aussage auf der Seite liest sich aber so, dass diese Windows-Einschränkung schon immer bestanden hat.

    Gibts Fehlermeldungen? Hast du den typischen Fehler gemacht, und $_GET, $_POST, $_SERVER etc. _nicht_ verwendet?

    - Sven Rautenberg

    1. Ich hab zwar nicht die neueste Version von PHP auf Windows installiert, aber die Angaben unter http://www.php.net/manual/en/function.include.php besagen, dass du per include() keine entfernten Dateien (also mit "http" oder "ftp") einbinden kannst. Alles andere (also das normale Einbinden einer lokalen Datei) sollte funktionieren. Die Aussage auf der Seite liest sich aber so, dass diese Windows-Einschränkung schon immer bestanden hat.

      Gibts Fehlermeldungen? Hast du den typischen Fehler gemacht, und $_GET, $_POST, $_SERVER etc. _nicht_ verwendet?

      • Sven Rautenberg

      hmm.. möglich, dass ich ab der neuen version was daran schrauben muss?  bisher hab ich einfach immer nur das update aufgespielt und fertig.

      inwiefern muss ich die variablen verwenden?

      noch zum include:  ich verweise damit einfach nur auf dateien, die im gleichen verzeichnis wie die script-datei liegen.
      include("datei.ext");

      was sind diese typischen fehler?

      scherer

      1. Moin!

        Die wichtigste Frage ist immer noch unbeantwortet:

        Gibts Fehlermeldungen?

        hmm.. möglich, dass ich ab der neuen version was daran schrauben muss?  bisher hab ich einfach immer nur das update aufgespielt und fertig.

        Naja, gewisse Dinge ändern sich. Dazu solltest du eigentlich die Dokumentation lesen, um informiert zu sein.

        inwiefern muss ich die variablen verwenden?

        Wenn du Eingaben von der URL-Zeile oder Formularen entgegennimmst, dann sind ab sofort die Hashes $_GET oder $_POST zu verwenden. PHP schreibt die übergebenen Daten nicht mehr automatisch in die Variablen. Deshalb funktionieren viele Skripte nicht mehr.

        Ab einer gewissen PHP-Version gibts die alten Hashes namens $HTTP_*_VARS nicht mehr. Auch das führt zu Fehlern.

        noch zum include:  ich verweise damit einfach nur auf dateien, die im gleichen verzeichnis wie die script-datei liegen.
        include("datei.ext");

        Das sollte funktionieren. Aber poste Fehlermeldung und echten Quellcode (ausschnittweise), dann sehen wir mehr. Interessant in diesem Zusammenhang: Wo kommt der Dateiname der einzubindenden Datei her?

        - Sven Rautenberg

        1. Die wichtigste Frage ist immer noch unbeantwortet:

          Gibts Fehlermeldungen?

          nein, keine.  die externe datei wird einfach nicht eingebunden und der entsprechende platz bleibt ungefüllt.

          Wenn du Eingaben von der URL-Zeile oder Formularen entgegennimmst, dann sind ab sofort die Hashes $_GET oder $_POST zu verwenden. PHP schreibt die übergebenen Daten nicht mehr automatisch in die Variablen. Deshalb funktionieren viele Skripte nicht mehr.

          das is ja total beschissen..

          noch zum include:  ich verweise damit einfach nur auf dateien, die im gleichen verzeichnis wie die script-datei liegen.
          include("datei.ext");

          Das sollte funktionieren. Aber poste Fehlermeldung und echten Quellcode (ausschnittweise), dann sehen wir mehr. Interessant in diesem Zusammenhang: Wo kommt der Dateiname der einzubindenden Datei her?

          wie gesagt.. fehlermeldungen gibt's keine und der include() is in meiner aktuellen datei der einzige PHP befehl.

          <? include("datei.ext"); ?>

          mehr is net drin.

          wäre echt enttäuscht, wenn man jetzt grad alle bisherigen seiten komplett überarbeiten müsste.. kann doch net angehn, dass man usern mit nem kleinen update das leben so schwer macht..

          scherer

          1. Hallo,

            wie gesagt.. fehlermeldungen gibt's keine und der include() is in meiner aktuellen datei der einzige PHP befehl.

            <? include("datei.ext"); ?>

            mehr is net drin.

            vielleicht wird der PHP-Teil gar nicht ausgeführt - wenn Du

            <?php include("datei.ext"); ?>

            schreibst, klappt's dann?
            Es gibt da (wenn ich mich richtig erinnere) eine Einstellung in der php.ini,
            mit der man die Verwendung der kurzen Skript-Anfangskennung einschalten kann.
            Vielleicht ist diese bei der neuen PHP-Version nur defaultmäßig ausgestellt.

            Schönen Gruß

            Rainer

            1. vielleicht wird der PHP-Teil gar nicht ausgeführt - wenn Du

              <?php include("datei.ext"); ?>

              schreibst, klappt's dann?
              Es gibt da (wenn ich mich richtig erinnere) eine Einstellung in der php.ini,
              mit der man die Verwendung der kurzen Skript-Anfangskennung einschalten kann.
              Vielleicht ist diese bei der neuen PHP-Version nur defaultmäßig ausgestellt.

              Schönen Gruß

              Rainer

              hey rainer.. in meiner ini is die kurzform <? ?> "leider" erlaubt..

              scherer

  2. hi,

    habe mir grade eben die aktuelle PHP version installiert und durfte jetzt feststellen, dass die include() funktion nicht mehr funktioniert.  hab ich einfach was falsch gemacht oder ist das der neue standard?

    poste mal deinen quelltext - ich kanns mir eigentlich nicht vorstellen, dass es an der aktuelleren php-version liegt...

    ta

    1. poste mal deinen quelltext - ich kanns mir eigentlich nicht vorstellen, dass es an der aktuelleren php-version liegt...
      ta

      einfach nur

      include("datei.ext");

      auch meine alten homepages, die vorher problemlos gingen, funzen jetzt einfach nicht mehr.