Sp33dy G0nz4l3s: Include in Includeter Datei?

Hi, ich habe folgendes gemacht:

In der Datei: http://www.cs-erweiterungen.de/index.php?site=9 ist ein Include Befehl für die Datei:

include("http://www.cs-erweiterungen.de/scripts/comments/check.inc.php");

In der check.inc.php wiederum ist ein
include ("http://www.cs-erweiterungen.de/scripts/comments/function.inc.php"); Befehl

Wenn ich nun jedoch mein Script ausprobiere steht da:

Fatal error: Call to undefined function: no_reload() in /home/www/web4/html/scripts/comments/show.php on line 3

Die function no_reload() wird jedoch in der function.inc.php eingeführt.

Geht das so nicht?

  1. Hellihello,

    von show.php steht bei dir aber nichts. Im Grunde muss es gehen, sonst hätten Du einen anderen Fehler, nämlich, dass die Datei nicht includiert werden konnt...;

    Gruß,

    frankx

    1. Hellihello,

      von show.php steht bei dir aber nichts. Im Grunde muss es gehen, sonst hätten Du einen anderen Fehler, nämlich, dass die Datei nicht includiert werden konnt...;

      Gruß,

      frankx

      Ja ich meinte show.php.

      Das ist komisch. Ich probiere jetzt noch einmal alles von vorne.

  2. echo $begrüßung;

    include("http://www.cs-erweiterungen.de/scripts/comments/check.inc.php");
    include ("http://www.cs-erweiterungen.de/scripts/comments/function.inc.php");

    Unter beiden URLs wird kein PHP-Code ausgeliefert. Kein Code => keine Funktionsdeklaration.

    Geht das so nicht?

    Vermutlich möchtest du einen Verweis auf das lokale Dateisystem und nicht quer durch das Internet setzen.

    echo "$verabschiedung $name";

    1. Vermutlich möchtest du einen Verweis auf das lokale Dateisystem und nicht quer durch das Internet setzen.

      Ja möchte einen Verweis auf das lokale Dateisystem machen. Aber was genau muss ich dazu ändern?

      Danke

      1. Hello out there!

        include("http://www.cs-erweiterungen.de/scripts/comments/check.inc.php");
        include ("http://www.cs-erweiterungen.de/scripts/comments/function.inc.php");

        Vermutlich möchtest du einen Verweis auf das lokale Dateisystem und nicht quer durch das Internet setzen.

        Ja möchte einen Verweis auf das lokale Dateisystem machen. Aber was genau muss ich dazu ändern?

        Die Parameter von include().

        See ya up the road,
        Gunnar

        --
        „Wer Gründe anhört, kommt in Gefahr nachzugeben.“ (Goethe)
      2. Hi!

        Ja möchte einen Verweis auf das lokale Dateisystem machen. Aber was genau muss ich dazu ändern?

        Na, sowas in der Art:
        include("./scripts/comments/check.inc.php");
        Wenn du da einen URL reinsetzt wie hier:
        include("http://www.cs-erweiterungen.de/scripts/comments/check.inc.php");
        Dann erfolgt der Zugriff über das Internet. Dann kann nur eingebunden werden, was dir PHP beim Aufruf der Datei ausgibt.

        Schöner Gruß,
        rob

        1. Hi,

          Wenn du da einen URL reinsetzt wie hier:
          include("http://www.cs-erweiterungen.de/scripts/comments/check.inc.php");
          Dann erfolgt der Zugriff über das Internet. Dann kann nur eingebunden werden, was dir PHP beim Aufruf der Datei ausgibt.

          genauer: ...was dir der Webserver zurückgibt.

          @Sp33dy G0nz4l3s
          Bei der Übergabe einer URL an include gibt es genau zwei Möglichkeiten:

          1. es funktioniert gar nicht. Dann ist die ini-Direktive allow_url_fopen und damit der "Zugriff auf entfernte Dateien" ausgeschaltet. In diesem Fall kann man keine der unterstützten URL an include übergeben.
          2. Es wird das eingebunden, was der Webserver nach dem Anfordern der Ressource zurückgibt. Dies ist bei o.g. URL kein PHP-Code, da der Webserver angewiesen wurde, Dateien mit der Endung .php zuerst an den PHP-Interpreter zu übergeben. Was da zurückgegeben wird, ist exakt das, was du auch erhälst, wenn du den URL in die Adresszeile deines Browsers eingibst, also leicht zu prüfen.

          Wie du das Problem umgehst, wurde dir ja bereits von rob und den Anderen erklärt.

          Gruß,
          Andreas.