fopen() bringt Unable to access murx.txt
frankx
- php
Hellihello
nach meiner recherche und nach vorlage eines "besserwissers" habe ich mit fopen wie unten beschrieben hantiert. eigentlich sollte die datei erstellt werden, wenn sie nicht vorhanden ist, aber er tuts nicht...;
<?php
// Datei zum schreiben und anhängen öffnen
$fileHandle = fopen('murx.txt', 'a');
fwrite($fileHandle, "Dies ist eine zeile"); // schreiben
fclose($fileHandle); // schließen
// Informationen
phpinfo();
// Ip auslesen
echo $_SERVER['REMOTE_ADDR'];
?>
statt dessen kommt:
Warning: fopen() [function.fopen]: Unable to access murx.txt in /mnt/ja1/01/297/00000014/htdocs/php/daten-in-text-datei.php on line 5
das alles auch zu bewundern unter http://medienbu.de/php/speichern2.php mit phpinfo()...
dank für hilfe,
frankx
Hello,
und was willst Du als "Besserfrager" nun wissen?
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
Hellihello Tom,
na, da frag ich mich, warum das nicht funktioniert. Frage mich, ob es evtl. an Servereinstellungen liegt. Irgendwie lief das auch mal auf xampp zu Hause...; und ich finde auch keine Antwort, warum PHP die Datei nicht anlegt...;
Dank und Gruß,
Frankx
Hello,
na, da frag ich mich, warum das nicht funktioniert. Frage mich, ob es evtl. an Servereinstellungen liegt. Irgendwie lief das auch mal auf xampp zu Hause...; und ich finde auch keine Antwort, warum PHP die Datei nicht anlegt...;
Die Fehlermeldung "unable to access" in Verbindung mit dem Modus "a" deutet darauf hin, dass das innerhalb des Pfades eine (verzeichnis-)Ebene oder mehrere stecken, für die der Prozess keine x-Rechte hat.
Du solltest also überprüfen, ob der zuständige PHP-Prozess das x-Recht übe den gesamten Pfad inne hat und dann das w-Recht für das Verzeichnis, in dem die Datei erstellt werden soll.
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom
Hellihello Tom,
Du solltest also überprüfen, ob der zuständige PHP-Prozess das x-Recht übe den gesamten Pfad inne hat und dann das w-Recht für das Verzeichnis, in dem die Datei erstellt werden soll.
danke für die Antwort. Hast Du noch ein oder zwei Wort übrig dazu, wie ich das checken kann?
berlinische regennasse schlechterwisser grüße,
frankx
Hi!
Du solltest also überprüfen, ob der zuständige PHP-Prozess das x-Recht übe den gesamten Pfad inne hat und dann das w-Recht für das Verzeichnis, in dem die Datei erstellt werden soll.
danke für die Antwort. Hast Du noch ein oder zwei Wort übrig dazu, wie ich das checken kann?
z.B. in der Konsole (sofern möglich) mittels ls -l oder auch in deinem FTP-Client. Ansonsten solltest du bei deinem Provider nachfragen.
Grüße,
Fabian St.
Hello,
Du solltest also überprüfen, ob der zuständige PHP-Prozess das x-Recht übe den gesamten Pfad inne hat und dann das w-Recht für das Verzeichnis, in dem die Datei erstellt werden soll.
danke für die Antwort. Hast Du noch ein oder zwei Wort übrig dazu, wie ich das checken kann?
es gibt doch die PHP-Dateifunktionen: http://de2.php.net/manual/en/ref.filesystem.php
Damit kann man sich jede Prüfung zusammenbauen. Ich würde mir also den Pfad schnappen und in Ebenen zerlegen und dann von vorne anfangen, z.B. mit is_executable() nachzufragen, ob das Recht gesetzt ist.
Harzliche Grüße vom Berg
esst mehr http://www.harte-harzer.de
Tom