PHP Script aus Unterordner Includen

  • Thread starter Thread starter SGD
  • Start date Start date
S

SGD

Guest
Hallo,

Mal ne ganz Easy Frage:

Ich möchte in einer PHP Datei ein anderes Script aus einem Unterordner aufrufen.

Klappt aber nur mit dem kompletten Pfad:

<?php include ('http://www.domain.tld/ordner/script.php'); ?>


Das finde ich echtunprofessionell.
Wie kann ich diesen Eintrag kürzen?

Das erste Script wird ja auch auf domain.tld ausgeführt...


Vielen Dank
 
Das klappt nicht. Kann das irgendwie mit der open_basedir Einstellung zusammen hängen, das der Server das Script nicht ausführen will?

Wenn ich es so mache wie du, erhalte ich folgende Meldung:

PHP:
Warning: Unknown(foren/phpbbhs.php?url=register): failed to open stream: No such file or directory in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Warning: (null)(): Failed opening ‘foren/phpbbhs.php?url=register’ for inclusion (include_path=’.:/var/www/confixx/html/include:/var/www/confixx/html’) in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Grüße.
 
No such file or directory in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php
Das ist aber nicht das Hauptverzeichnis.
Also entweder
Code:
/foren/phpbbhs.php?url=register
oder
Code:
../../../../foren/phpbbhs.php?url=register
wobei letzteres auch nicht wirklich professionell aussieht.
 
Klappt beides auch nicht so ganz, also vielleicht liegt es auch an meinem Wordpress Plugin... Tu mich sehr schwer mit Fehlercodes übersetzen :confused:

PHP:
Warning: Unknown(): open_basedir restriction in effect. File(/foren/phpbbhs.php?url=register) is not within the allowed path(s): (/var/www/web11/html/:/var/www/web11/phptmp/:/var/www/web11/files/:/var/www/web11/atd/) in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Warning: Unknown(/foren/phpbbhs.php?url=register): failed to open stream: Operation not permitted in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Warning: (null)(): Failed opening ‘/foren/phpbbhs.php?url=register’ for inclusion (include_path=’.:/var/www/confixx/html/include:/var/www/confixx/html’) in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2
 
Dass das jetzt nicht klappt ist klar, weil der interpretiert jetzt:
/foren
Als ein Verzeichnis direkt unterhalb vom root Verzeichnis deines Servers /. Und dass verbietet, logischerweise, openbasedir.
 
Dass das jetzt nicht klappt ist klar, weil der interpretiert jetzt:
/foren
Als ein Verzeichnis direkt unterhalb vom root Verzeichnis deines Servers /. Und dass verbietet, logischerweise, openbasedir.


Aha, also werde ich bei meiner Variante bleiben müssen?
 
Oder bei der zweiten Variante von Whistler.

Die wäre mir persönlich sogar lieber, weil sie nicht an die Domain gebunden ist. Stell dir den Fall vor, du wechselst die Domain :)
 
Das Problem an der Sache ist nur, die geht leider auch nicht.

PHP:
Warning: Unknown(): open_basedir restriction in effect. File(../../../../foren/phpbbhs.php?url=register) is not within the allowed path(s): (/var/www/web11/html/:/var/www/web11/phptmp/:/var/www/web11/files/:/var/www/web11/atd/) in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Warning: Unknown(../../../../foren/phpbbhs.php?url=register): failed to open stream: Operation not permitted in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Warning: (null)(): Failed opening ‘../../../../foren/phpbbhs.php?url=register’ for inclusion (include_path=’.:/var/www/confixx/html/include:/var/www/confixx/html’) in /var/www/web11/html/wp-content/plugins/exec-php/includes/runtime.php(42) : eval()’d code on line 2

Mir gefällt meine "Lösung" auch nicht, deshalb bin ich ja jetzt hier :D
 
Ich schließe mich DJrick's Aussage an:
Es kann so nicht klappen!

Aber mit einer anderen Begründung aus der PHP-Doku:
The include() statement includes and evaluates the specified file.
...
If "URL fopen wrappers" are enabled [...] you can specify the file to be included using a URL
Die Betohnung liegt hier auf "file" oder "URL".
Du möchtest aber mit "foren/phpbbhs.php?url=register" eine Mischung daraus einsetzen.
Und wie oben bereits gesagt: Das klappt nicht!
Du kannst entweder bei der URL-Form bleiben mit der es funktioniert, oder Du setzt den Parameter bereits im aufrufenden Programm.

huschi.
 
Aso, na klar...

Funzt alles gerade sowieso nicht so wie ich das wollt :(

Aber ma gucken wie ich das jetz mache...
 
Back
Top