kostenloser Webspace werbefrei: lima-city


PHP - include Permissions

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    g********e

    Morgen :D

    ich habe ein kleines Problem ^^ und zwar habe ich in der Datei /beispiel/index.php folgende drei Codezeilen:
    <?php
    include("../?s=beispiel");
    ?>


    so, jetzt habe ich folgendes Problem. In diesem Ordner habe ich keine Berechtigung, auf das Verzeichnis davor zuzugreifen. Wo stelle ich die Berechtigungen ein? :wink:

    LG
    Michael
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hi versuch mal das
    <?php
    include("benutzername.lima-city.de/?s=beispiel");
    ?>

  4. Autor dieses Themas

    g********e

    An sich eine gute Idee, hat leider nicht Funktioniert.

    Ich hoste das im Moment alles mit XAMPP. Hier mal die Fehlermeldungen mit deinem Beispiel:

    Warning: include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 in C:\xampp\htdocs\projekte\beispielProjekt\beispiel\index.php on line 2
    
    Warning: include(http://localhost/projekte/beispielProjekt/?s=server): failed to open stream: no suitable wrapper could be found in C:\xampp\htdocs\projekte\beispielProjekt\beispiel\index.php on line 2
    
    Warning: include(): Failed opening 'http://localhost/projekte/beispielProjekt/?s=server' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\projekte\beispielProjekt\beispiel\index.php on line 2


    Und mit meiner Variante:
    Warning: include(../?s=server): failed to open stream: No error in C:\xampp\htdocs\projekte\beispielProjekt\beispiel\index.php on line 2
    
    Warning: include(): Failed opening '../?s=server' for inclusion (include_path='.;C:\xampp\php\PEAR') in C:\xampp\htdocs\projekte\beispielProjekt\beispiel\index.php on line 2


    LG
    Michael
  5. Hallo,

    du hast ein Verständnis Problem, auf Windows kann eine Datei nicht ?s=beispiel heißen, da weder das ? noch das = im Dateinamen erlaubt sind.

    Ich denke, dass du die index.php einbinden willst, oder?

    Wenn das der Fall ist mache das auch:
    <?php include '../index.php';


    Nun zu deinem Verständisproblem, include erzeugt keinen neuen Request, wie den, den du mit deinem Browser absetzt. Stattdessen läd es die entsprechende Datei nach und führt sie im Kontext des laufenden Scripts aus. Oder um es einfacher auszudrücken wird die includierte Datei in den Programmfluss eingefügt.

    Um dir das Beispielhaft zu zeigen sind hier zwei PHP-Dateien, a.php und b.php.
    a.php:
    <?php
    // Gebe den Parameter s aus z.B. bei
    // folgendem Aufruf: http://example.org/a.php?s=beispiel
    echo $_GET['s'] . PHP_EOL;
    // binde b.php ein
    include 'b.php';

    b.php:
    <?php
    // Gebe den Parameter s aus z.B. bei
    // folgendem Aufruf: http://example.org/a.php?s=beispiel
    // oder bei: http://example.org/b.php?s=beispiel
    echo $_GET['s'] . PHP_EOL;

    Intern macht php aus diesem Programm soetwas:
    <?php
    echo $_GET['s'] . PHP_EOL;
    echo $_GET['s'] . PHP_EOL;

    Wie man sieht wird die Datei einfach nur an der entsprechenden Stelle eingebunden.

    Verstanden?
    Ansonsten einfach nochmal nachfragen.

    Mit freundlichen Grüßen

    * Edit: Doppeltes Beispiel korrigiert…

    Beitrag zuletzt geändert: 2.9.2013 23:02:48 von nemoinho
  6. Autor dieses Themas

    g********e

    Vielen dank,
    habs verstanden :D

    LG
    Michael
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!