PHP Einträge in Textdatei ändern
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
auslese
bearbeiten
beispiel
benutzername
code
datei
dateiname
datum
eintrag
eintrages
email
folgendem format
fortlaufende nummer
inhalt
ordner
rest
speichern
text
uhr
zeile
-
Hi,
ich habe ein Gästebuch mit PHP prpgrammiert.
Die Einträge werden in einer Text-Datei gespeichert.
<?php // ... $eintrag = "$name|$email|$homepage|$icq|$ip|$datum|$uhr|$inhalt"; $datei = fopen("gaestebuch.txt", "a"); fwrite($datei, "\n".$eintrag); fclose($datei); ?>
Jetzt möchte ich einen Adminbereich machen, wo Beiträge geändert werden. Beispiel:
gaestebuch.txt
squid|willkommen adolf|hi lampp|lol
Gibt es jetzt eine Möglichkeit, zum Beispiel nur "adolf|hi" anzuzeigen und alles andere wegzufiltern, oder gleich:
gibt es eine Möglichkeit, adolf|hi in adolf|hallo zu ersetzten und den rest ungeändert zu lassen?
Danke, Squid -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hier:
<?php if (isset($_POST['bearbeiten'])) { // Hier wird der neue Text gespeichert $neu = $_POST['text']; $fp = fopen('inhalt.txt', 'a'); fputs($fp, $neu); fclose($fp); } ?> <span class="ueberschrift">Text bearbeiten</span> <?php //Textausgabe in textarea echo '<form id="meldung" name="meldung" method="post" action="'.$_SERVER['PHP_SELF'].'"> <textarea name="text" cols="100" rows="10">'; $dateiname="inhalt.txt"; $fp = fopen($dateiname,"r"); while (!feof($fp)) { $zeile = fgets($fp); echo str_replace("<br>","n",$zeile); } fclose($fp); ?> </textarea><br /><br /> <input type="submit" name="bearbeiten" value="Bearbeiten" /> </form>
Jetzt nur noch inhalt.txt erstellen und fertig. -
Denke die bessere Variante wäre das Gästebuch in einem Ordner zu speichern und für jeden Eintrag eine Datei anzulegen.
Diese Datei kannst du dann nach folgendem Format aufbauen:
Benutzername\n
Beitrag
So kannst du dann auch mit der php-Funktion filemtime() das Datum der Änderung/des Eintrages auslesen und danach sortieren.
Den Dateien würde ich einfach eine fortlaufende Nummer zuordnen oder evtl. einen Timestamp. -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage