php - \" -tegn
Jeg brygger på en side, hvor det skal være muligt at redigere en fil "fil.php" ved at hente med file_get_contents og derefter indsætte det i et textarea og tilsidst for at blive send gennem form - POST og blive gem med oprindeligt filnavn "fil.php". Jeg har fået første del til at fungere fint, men når jeg skal gemme filensindhold (med alle korrekte tegn) vil den ikke gengive " og '?? det vil sige uden \ fordi eksperten.dk også laver "ged" i det. jeg har prøvet med chr() (mener det er 34, 39 og 92 http://www.asciitable.com/)MEN uden helt... hvad gør jeg??
Scriptet:
if (empty($_GET['file'])) {
if (empty($_POST['filedata'])) {
echo ("<h1>Console</h1><br>Rediger en fil i kataloget<br><br>");
$dir = path//
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
print "<a href='index.php?mode=console&file=$file'>$file</a> <br>\n";
}
closedir($dh);
}
} else {
echo "fejl i katalog-string";
}
} else {
$data = $_POST['filedata'];
$data = ereg_replace ("</text---area>", "</textarea>", $data);
$filenavn = $_POST['filenavn'];
// $ting = chr(92) . chr(34);
// $ting2 = chr(92) . chr(39);
// $replace = chr(34);
// $datating = ereg_replace ($ting, $replace, $data);
// $datating = ereg_replace ($ting2, $replace, $datating);
if (!copy($filenavn, $filenavn.'.bak')) {
print ("failed to copy $filenavn...<br>\n");
}
$fconsole = fopen ("$filenavn", "w");
fwrite($fconsole, $data);
fclose($fconsole);
header("Location: index.php?mode=console");
}
} else {
$file = $_GET['file'];
$filecontent = file_get_contents ($file);
$filecontent = ereg_replace ("</textarea>", "</text---area>", $filecontent);
echo ("<h1>Console</h1>Rediger en fil i kataloget<h2>$file</h2><form method='POST' action='console.php'><textarea rows='16' name='filedata' cols='60'>" . $filecontent . "</textarea><br><br><input type='hidden' value='$file' name='filenavn'><input type='submit' value='Gem fil' name='B1'></form><h2><a href='index.php?mode=console'><-- Tilbage</a></h2>");
}
} else {
header("Location: index.php");
}
vh laur
