Guten Tag in die Runde
Ich habe da ein kleines Script gefunden , es funktioniert so einfach es ist . Praktisch einfach Super .
Nun das einzigste was mich stört ist das ich beim Speichern der Datein keinen "Endung" jeglicher form gebrauchen kann .
Auch haben die Datein nach dem Speichern am ende immer einen Punkt " . "
Die Datein sollen jedoch einfach nur mit einem Namen gespeichert werden , habe schon versucht die bereiche mit endung heraus zu löschen so das es ohne Endung gespeichert wird .
Aber habe das nicht hin bekommen .
Das Script ist sicherlich nicht mehr das neuste und es gibt sicherlich auch bessere ansätze aber für mich erfüllt es seinen zweck wirklich super .
Wäre super Lieb wenn hier einer das vielleicht sieht und mir aufzeigt wie ich es entsprechend ändern kann .
Lieben Dank im Vorraus
Boldo
Ich habe da ein kleines Script gefunden , es funktioniert so einfach es ist . Praktisch einfach Super .
Nun das einzigste was mich stört ist das ich beim Speichern der Datein keinen "Endung" jeglicher form gebrauchen kann .
PHP-Code:
<?php
// Passwort
$passwort = "hier Dein Passwort eintragen";
// Verzeichnis am Server erstellen - hier 'texte/'
$verzeichnis = "texte/";
// Die Dateiendung der Dateien die mit
// diesem Formular bearbeitet werden kann.
$dateiendung = ""; // Ohne Punkt!
// Datei speichern
if ($_SERVER["REQUEST_METHOD"] == "POST") {
// Passwort überprüfen
if ($_POST["passwort"] === $passwort &&
// Sind alle Formularfelder ausgefüllt
!empty($_POST["dateiname"]) &&
!empty($_POST["text"])) {
// Speichern
if ($_POST["option"] == "speichern") {
if (file_put_contents($verzeichnis . $_POST["dateiname"] . '.' . $dateiendung, $_POST["text"])) {
echo '<p>Die Datei wurde erfolgreich gespeichert.</p>';
}
else {
echo '<p>Fehler beim speichern der Datei!</p>';
}
}
// Löschen
if ($_POST["option"] == "loeschen") {
if (unlink($verzeichnis . $_POST["dateiname"] . '.' . $dateiendung)) {
echo '<p>Die Datei wurde erfolgreich gelöscht.</p>';
}
else {
echo '<p>Fehler beim löschen der Datei!</p>';
}
}
}
}
// Datei öffnen
if (isset($_GET["datei"])) {
if (file_exists($verzeichnis . $_GET["datei"])) {
// Den Dateinamen ermitteln
$dateiname = basename($_GET["datei"]);
$pos = strpos($dateiname, ".");
$dateiname = substr($dateiname, 0, $pos);
// Die Dateiendung überprüfen
$dinfo = pathinfo($_GET["datei"]);
if ($dinfo['extension'] == $dateiendung) {
$text = file_get_contents($verzeichnis . $_GET["datei"]);
}
}
}
// Neue Datei
else {
$dateiname = "";
$text = "";
}
?>
<form action="index.php" method="post">
<p>
<label>Dateiname:
<input type="text" size="25" name="dateiname" value="<?php echo $dateiname; ?>" required="required"></label>
<small>.<?php echo $dateiendung; ?></small>
</p>
<p>
<label>Text:<br>
<textarea name="text" rows="10" cols="35" required="required"><?php echo $text; ?></textarea>
</label>
</p>
<p>
<label>Passwort: <input type="password" name="passwort" required="required"></label>
</p>
<p>
<label><input type="radio" name="option" value="speichern" checked="checked"> Datei speichern</label>
<label><input type="radio" name="option" value="loeschen" required="required"> Datei löschen</label>
</p>
<p>
<input type="submit" value="Absenden">
</p>
</form>
<h3><span style="font-weight: bold;">Dateien</span>:</h3>
<?php
// Verzeichnis auslesen und ausgeben
foreach (glob($verzeichnis . "*." . $dateiendung) as $datei) {
echo '<a href="?datei=' . basename($datei) . '">' . basename($datei) . '</a><br>';
}
?>
Die Datein sollen jedoch einfach nur mit einem Namen gespeichert werden , habe schon versucht die bereiche mit endung heraus zu löschen so das es ohne Endung gespeichert wird .
Aber habe das nicht hin bekommen .
Das Script ist sicherlich nicht mehr das neuste und es gibt sicherlich auch bessere ansätze aber für mich erfüllt es seinen zweck wirklich super .
Wäre super Lieb wenn hier einer das vielleicht sieht und mir aufzeigt wie ich es entsprechend ändern kann .
Lieben Dank im Vorraus
Boldo
Kommentar