TXT-Datei online bearbeiten

Original geschrieben von Johannes Röttger
PHP:
<?php
session_start();
$userpass = "god"; // passwort

if (isset($_SESSION["in"])) {
    $dateiname ="home.txt";
    if(isset($_POST['input'])) {
        $fp = fopen($dateiname, "w");
        $f_input = fwrite($fp, $_POST['input']);
        fclose($fp);
        header("Location: " . $_SERVER["PHP_SELF"] . "?" . $_SERVER["QUERY_STRING"]);
    } else {
        $fp = fopen($dateiname, "r");
        $filesize= filesize($dateiname);
        $f_output = fread($fp, $filesize);
        fclose($fp);
        echo '<form action="' . $_SERVER["PHP_SELF"] . '?' . $_SERVER["QUERY_STRING"] . '" method="POST"><textarea name="input" cols="30" rows="5">';
        echo $f_output;
        echo'</textarea><input type="submit" name="submit"></form>';
    }
} else {
    if ($_POST["pass"] == $userpass) {
        $_SESSION["in"] = true;
        header("Location: " . $_SERVER["PHP_SELF"] . "?" . $_SERVER["QUERY_STRING"]);
    } else {
        echo "<form action=\"" . $_SERVER["PHP_SELF"] . "\" method=\"post\">";
        echo "<input type=\"password\" name=\"pass\" value=\"\" />";
        echo "<input type=\"submit\" value=\"Login\" />";
        echo "</form>";
    }
}
?>


Hoffentlich funktioniert das so, n.T. :)

hmm...
da kommt
Notice: Undefined index: userpass in D:\PHP\FGY\neu.php on line 23


dann muss ich das alte Login.Script weg lassen?
 
ok, es ...
danke

eine Frage habe ich noch, kann ich die datei mit datei.php?dateiname=test.txt aufrufen?

muss ich dann einfach die variable mit dem dateinamen rausnehmen?
 
Ersetze
PHP:
$dateiname = "home.txt";
mit folgendem:
PHP:
$dateiname = $_GET["dateiname"] ? (file_exists($_GET["dateiname"]) ? $_GET["dateiname"] : "home.txt") : "home.txt";
 
kuhl...
das auch..
aber, wenn ich ne datei ändere, macht der in die datei ganz viele */*

dann sieht das so aus:
PHP:
<SCRIPT LANGUAGE=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'JAVASCRIPT\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' TYPE=\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'TEXT/JAVASCRIPT\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'>


kann man da was gegen machen?
 
Hm, änder Zeile 9 probehalber mal in

PHP:
$f_input = fwrite(addslashes($fp), $_POST['input']);

Ob das schon reicht weiss ich nicht, aber versuch es mal.
 
Zurück