Mit PHP auf Datei zugreifen

RobertGree

Cadet 3rd Year
Registriert
Feb. 2007
Beiträge
40
Hey ihr!

Ich habe ein PHP Script, das auf Dateien zugreift, sie ausliest, verändert und oder speichert. Es sind nur Textdateien.
Was muss ich alles machen, damit das auch auf einem Webserver funktioniert? Die Seite habe ich mit EasyPHP erstellt, jetzt, auf einem Webserver (zu Testzwecken auf www.kostenlos-php.de) funktioniert das System nicht mehr, ich erhalte immer:

Code:
Warning: fopen() [function.fopen.php]: URL file-access is disabled in the server configuration in /var/www/usersites/r/rg/rgtestspace/htdocs/GG_Projekt/CMS/datenbank/n2/p1/Neues Textdokument.php on line 7

Ich nehme an, dass der Server es dem Script nicht erlaubt auf die Datei zuzugreifen. Habt ihr eine Idee oder einen Lösungsvorschlag?

Vielen Dank,
Grüße, RGausBC
 
Ich schlage vor, so eine Praxis seinzulassen. Einem PHP Skript beliebigen Zugriff auf das Dateisystem zu geben reißt fein Sicherheitslöcher auf.
 
@ asdfman, ja, das ist mir klar. Aber ich will etwas lernen und etwas ausprobieren. Ich weis, dass diese Vorgehensweise nicht super sicher ist. Aber ich möchte dieses Projekt durchziehen.

@ claW.: Ich öffne Dateien damit:
Code:
$datei = fopen($Datei, 'r');
											
while (!feof($datei))
{
	$zeile = fgets($datei, 512);
	$zeile = trim($zeile);
	echo ($zeile.'<br>');
}
											
fclose($datei);

Aber das Script an sich funktioniert ja - nur eben nicht auf einem Webserver.
Wie muss ich den denn konfigurieren, dass er dem Script erlaubt auf Dateien zuzugreifen?
 
und was steht in $Datei drin? ein relativer/absoluter/anderer pfad? der fehlermeldung zufolge (... URL file-access ...) deutet für mich darauf hin, dass du versuchst eine datei über http:// oder vergleichbares zu öffnen. in der php.ini muss dazu übrigens allow_furl_open auf on stehen, damit du dateien über das internet öffnen kannst. sonst funktioniert es nur mit lokalen dateien.
 
Danke für den Hinweis!

Aber das mit der URL habe ich nur zuletzt versucht, eigentlich sind es lokale Dateien. Ich habe euch nur die letzte Fehlermeldung geschickt. In der anderen stand sonst aber das selbe.+

In $Datei steht ein Dateipfad der variablen enthält -> den Variablen werden die Werte übergeben und dann wäre es wie ein fixer dateipfad. Das ist nicht das Problem.

Hoffe das hilft für die analyse!

Danke!
 
schreib doch einfach um welchen pfad es sich handelt. vielleicht fehlt nur ein . am anfang, sodass du vom root-verzeichnis anstatt dem aktuellen pfad ausgehst oder es wird etwas nicht korrekt umgesetzt o.ä. vielleicht ist es auch etwas anderes. insofern du es uns nicht zeigst, können wir nur raten was es ist und nicht konkret helfen.
 
Zurück
Oben