PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Datei mit PHP erstellen


Annika Rika
2009-02-15, 05:07:14
Hallo, ich bin Anfängerin was PHP angeht. Ich wollte Fragen ob es möglich ist eine Benutzerdefinierte Datei in einem Unterordner zu erstellen.

Und zwar möchte ich eine Seite konstruieren auf der ein Formular vorhanden ist in welches man den Name der Datei die man erstellen möchte eingibt. Es soll also ein Ordner tiefer als das Script eine Leere .txt Datei erstellt werden. Und zwar mit dem Name, den der Benutzer im Formularfeld eingegeben hat.

Ich habe es zwar mit diversen Tuturials geschafft in eine Datei zu schreiben, doch wie ich eine Datei mit einem Benutzerdefinierten Name über ein Formularfeld erstellen kann habe ich noch nicht rausgefunden. (Bin wie schon gesagt noch Anfängerin in PHP)
Weiß jemand wie das gehen könnte?

Danke im Voraus.

darph
2009-02-15, 10:38:38
formular.html
<form action="file.php" method="POST">
<input type="text" name="myfilename" value="Dateiname" />
<input type="submit" value="Abschicken">
</form>


file.php
<?php
$fileName = $_POST["myfilename"]; //wie der Name des Formularfeldes
//----------^ Das ist der spannende Teil.


$file = $fileName.".txt";
$file = fopen($file, 'w') or die("geht net");
fclose($file);
?>


Aber, und jetzt kommt deine Hausaufgabe, was denkst du passiert, wenn ich in das Formular "../../../datei.txt" eingebe?

Gast
2009-02-15, 15:39:21
Aber, und jetzt kommt deine Hausaufgabe, was denkst du passiert, wenn ich in das Formular "../../../datei.txt" eingebe?
Permission denied?

darph
2009-02-15, 15:45:08
Wenn das System ordentlich konfiguriert ist, ja. Sollte man aber nicht von ausgehen.

ezzemm
2009-02-16, 07:25:45
Vor dem Erstellen der Datei die Sonderzeichen entfernen ;)
$filename = preg_replace("/[^a-zA-Z0-9]/","",$filename);