sichergehen das auch nichts falsches ausgelesen wird.

jer1cho

Mitglied
PHP:
<?php
if(isset($_GET['helpfile'])){
	
	echo('<textarea cols="100" rows="100" >');
	echo(file_get_contents(basename($_GET['helpfile'])));
	echo('</textarea>');
}
?>

also es sollen nur Dateien aus dem ordner ausgelesen werden koennen in dem sich
das script befindet.

auserdem muss diese datei vom typ txt sein.


ich habe angst das vielleicht jemand sowas wie ../../bla.php auslesen kann.
 
Du solltest sowas nie auf solch direkte Weise lösen.
Wie du bereits festgestellt hast ist das eine erhebliche Sicherheitslücke.

Arbeite lieber mit Identifiers.

Z.B.
http://www.deinedomain.de/LoadText.php?id=1

Und im Script soll eine Switch-Case-Konstruktion entscheiden bei welchem Identifier, welcher Inhalt geladen werden soll.

PHP:
Switch ($_GET['id'])
{
  case '1':
  $content = file_get_contents("irgendwelche.txt");
  break;
  case '2':
  $content = file_get_contents("diesejenedatei.txt");
  break;
}
echo('<textarea cols="100" rows="100" >');
echo$content;
echo('</textarea>');
 
Zuletzt bearbeitet:
aber so ist das halt etwas bequemer dann muss man nur nen link mit dem datei namen machen und die datei erstellen.

PHP:
<?php
if(isset($_GET['helpfile'])){
	
	echo('<textarea cols="100" rows="100" >');
	echo(file_get_contents((basename($_GET['helpfile'])).'.txt'));
	echo('</textarea>');
}
?>

dann kann man nur textfiles aus dem ordner lesen. und die koennte man ja auch einfach so lesen oder?
 
Zurück