Josef Jedermann
Grünschnabel
Hallo,
da ich mit der Suchfunktion nicht glücklich wurde, sehe ich mich nun doch gezwungen einen kleinen Text zu verfassen.
Die Problemstellung die ich habe ist folgende:
Ich habe ein PHP Skript welches eine Datei einliesst, (ebenfalls PHP) diese dann bearbeitet, einen Zufallsnamen ermittelt, mit dem neuen Namen abspeichert und in ein Verzeichnis kopiert und
die Kopiervorlage löscht. (also die mit dem Zufallsnamen)
So weit so gut, nichts wirklich wildes.
Nun möchte ich aber das dieses PHP Skript am Ende des ganzen Prozederes die erstellte und kopierte neue Datei ausführt. Nach etwas blättern erschien mir folgendes sinnvoll.
In der Tat wird es ausgeführt, aber nun kommt das Problem:
Die einzulesende PHP Datei die ich verändern und ausführen will verweist ihrerseits auf andere php Dateien die in dem Ordner liegen wo sie hinkopiert wurde. Führe ich die Datei manuell aus (vom neuen Ordner aus) klappt es wunderbar, per Aufruf (aus dem "alten" Verzeichnis) jedoch nicht. Das scheint daran zu liegen, daß include den Code so behandelt als würde er direkt dort stehen und die Dateien befinden sich nunmal nicht in diesem Verzeichnis. Also was tun um den Aufruf so zu gestalten das es die Dateien in dem neuen Verzeichnis nutzt und nicht die im Erstellungsvrzeichnis wo das Bearbeitungsskript lagert?
Als Information vielleicht noch sinnvoll, das in der PHP Datei auch JS lagert und so etwas wie
vorkommt. Und __FILE__ in dem JS Bereich wohl nicht klappt.
Ich würde mich freuen wenn jemand eine Lösung für dieses Problem wissen würde.
da ich mit der Suchfunktion nicht glücklich wurde, sehe ich mich nun doch gezwungen einen kleinen Text zu verfassen.
Die Problemstellung die ich habe ist folgende:
Ich habe ein PHP Skript welches eine Datei einliesst, (ebenfalls PHP) diese dann bearbeitet, einen Zufallsnamen ermittelt, mit dem neuen Namen abspeichert und in ein Verzeichnis kopiert und
die Kopiervorlage löscht. (also die mit dem Zufallsnamen)
So weit so gut, nichts wirklich wildes.
Nun möchte ich aber das dieses PHP Skript am Ende des ganzen Prozederes die erstellte und kopierte neue Datei ausführt. Nach etwas blättern erschien mir folgendes sinnvoll.
PHP:
include_once("5/$datei");
In der Tat wird es ausgeführt, aber nun kommt das Problem:
Die einzulesende PHP Datei die ich verändern und ausführen will verweist ihrerseits auf andere php Dateien die in dem Ordner liegen wo sie hinkopiert wurde. Führe ich die Datei manuell aus (vom neuen Ordner aus) klappt es wunderbar, per Aufruf (aus dem "alten" Verzeichnis) jedoch nicht. Das scheint daran zu liegen, daß include den Code so behandelt als würde er direkt dort stehen und die Dateien befinden sich nunmal nicht in diesem Verzeichnis. Also was tun um den Aufruf so zu gestalten das es die Dateien in dem neuen Verzeichnis nutzt und nicht die im Erstellungsvrzeichnis wo das Bearbeitungsskript lagert?
Als Information vielleicht noch sinnvoll, das in der PHP Datei auch JS lagert und so etwas wie
Code:
pageName="load.php?minX="
Ich würde mich freuen wenn jemand eine Lösung für dieses Problem wissen würde.