Hallo,
Mal eine allgemeine Verständnis-Frage:
Ist der nachfolgende Code sicher - abgesehen von einer fehlenden Prüfung auf Länge des im Feld eingegebenen Textes? Wenn nein, wie würde ein Angreifer hier vorgehen? Und wie müsste man es richtig machen?
[code lang = php]
<?php
$inhalt = "";
$quelle = "text.xml";
if (isset($_POST['textfeld'])) {
$inhalt = stripslashes($_POST['textfeld']);
$dateihandler = fopen($quelle, "w+");
fwrite($dateihandler, $inhalt);
fclose($dateihandler);
}
else {
$dateihandler = fopen("text.xml", "r");
$inhalt = fread($dateihandler, filesize($quelle));
}
$inhalt = stripslashes($inhalt);
echo '<?xml version="1.0" encoding="utf-8" ?>';
?>
[/code]~~~html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>XML aus Formular in Datei speichern</title>
</head>
<body>
<form action="formular-xml-in-datei.php" method="post">
<textarea name="textfeld" rows="10" cols="50"><?php echo $inhalt ?></textarea>
<input type="submit" value="Abschicken" />
</form>
</body>
</html>
Gruß, Nils
--
[Bookmarks](http://del.icio.us/nilslindemann)