Loading...   Upload Image

Dateien online bearbeitenTutorials » PHP/MySQL Tutorials » Dateien online bearbeiten

Verfasst von Alice am 25.04.2008 - wurde schon 10895 mal gelesen

Kategorie: PHP/MySQL
Bewertung:
9x bewertet
Schwierigkeit: einfach
Kommentare: [ 20 ]

Tag - Schlagwort Datei Tag - Schlagwort Script Tag - Schlagwort PHP Tag - Schlagwort Tutorial

Dateien online bearbeiten - Tutorial

Da ich gefragt wurde, was von noeten ist Dateien, mittels PHP, online zu bearbeiten, hier also ein kleines Tutorial dazu...

Im Prinzip benoetigt man eigentlich nur ein Formular und die Funktionen

- fopen()
- fwrite()
- fclose()

Aber schauen wir uns das Skript doch erst mal an...





Grafixx-Editor






Die Datei ".$pfad." wurde erfolgreich bearbeitet...\n 

"; echo "

» Noch eine Datei bearbeiten ..."; } } if (isset($_POST['submit']) AND (!empty($_POST['datei']))){ // Wenn submit gedrueckt wurde $pfad = strip_tags($_POST['datei']); // Variable entschaerfen if ($file = @fopen ("$pfad", "r")){ // Pruefen ob Datei existiert $inhalt = file_get_contents("$pfad"); // Inhalt der Datei auslesen und in String stecken $okay = "yes"; ?>

"" bearbeiten - +

Die angegebene Datei ".stripslashes($pfad)." existiert nicht!

"; } } // close isser submit if(!$okay AND ($action != "edit")){ // wenn nicht $okay und nicht edit ?>
Bitte die zu bearbeitende Datei angeben

Beispiel: ../html/datei.php



Zeile 1-6 des Skriptes sollten eigentlich jedem gelaeufig sein, der meint sich mit PHP auseinandersetzen zu muessen...
Zeile 7-20 ist eine kleine Javascript-Funktion, die es ermoeglicht die Groesse der Textarea, des Formular, zu veraendern

Die erste If-Abfrage ist fuer das Schreiben in die Datei zustaendig.
Erst wird geprueft ob ueber die Post-Variable 'inhalt' nicht leer ist, sollte dies der Fall sein wird eine Fehlermeldung ausgegeben, anderenfalls wird der Inhalt der Post-Variablen 'inhalt' und 'datei_pfad' mit der Funktion stripslashes()von ueberfluessig gesetzten Backslashes entfernt.
Danach wird die Datei, die per Post-Variable 'datei_pfad' uebergeben wurde, mit $datei = fopen( $pfad, "w") zum schreiben geoeffnet.
Mit fwrite($datei, $inhalt) wird in die Datei geschrieben, was per Post-Variable 'inhalt'[]/b uebergeben wurde. Und mit [b]fclose($datei) wird die Datei dann wieder geschlossen.

Die naechste If-Abfrage klaert ob der Submit-Button gedrueckt wurde und
die Post-Variable 'datei' dabei nicht leer geblieben ist.
Anschliessend wird geprueft ob der per Post-Variable 'datei' uebergebene Datei-Pfad auch wirklich stimmt / vorhanden ist.

Wenn die Datei vorhanden ist wird der Inhalt der Datei mittels
$inhalt = file_get_contents("$pfad") ausgelesen.

Die Variable 'okay' bewirkt,
dass das Formular zur Angabe des Datei-Pfades nicht mehr erscheint.

Es folgt das Formular zum Bearbeiten der Datei ...

Danach kommt die Fehlermeldung, sollte die Datei nicht vorhanden sein,
die per Post-Variable 'datei' uebergeben wurde.

Die If-Abfrage if(!$okay ...) prueft ob die Variable 'okay' sowie die Variable 'action' nicht gesetzt wurden.

Und zum Schluss folgt das Formular, in dem der Pfad zur Datei angegeben wird, die man bearbeiten moechte.

Hier kann entweder einen relativer Pfad angegeben werden oder aber einen absoluter Pfad, das ist egal, solange keine URL allà http:// angegben wird, ist das Skript zufrieden.

Warum keine URL angeben?


Die Funktion fopen() sowie file_get_contents() koennen zwar mit URL's umgehen, aber es kann hier nur gelesen werden und nicht geschrieben!

Wichtig!


Die Datei die mit diesem Skript bearbeiten werden soll,
muss ueber schreib und lese Rechte verfuegen,
diese koennen per chmod mit einem FTP-Programm vergeben werden...


Das Skript sollte vor unbefugtem Zugriff geschuezt werden,
damit niemand einfach so Dateien bearbeiten kann,
am einfachsten geschieht dies mittels htaccess ...

Wie immer gibt es hier das komplette Skript huebsch verpackt als Zip-Datei zum Download ...

Kommentar schreibenHinterlasse einen Kommentar

Du musst angemeldet sein, um einen Kommentar zu hinterlassen...

Du bist noch kein Mitglied von Alice-Grafixx.de?
Dann kannst du dich hier kostenlos registrieren ...


Affiliates:   Design Grafixx  •   Colorful Gfx  •   The Seduction  •   Gallery Yuri  •   Blue-Graphics  •   Pat DG  •   Chibi Graphics  • Show all ...
designenlassen.de - Der Design-Marktplatz für Webdesign, Logo-Design, Flyerdesign u.v.m.        ALL-INKL.COM - Webhosting Server Hosting Domain Provider