Sergo
Erfahrenes Mitglied
Hallo, ich hab mir da ein kleines Skript geschrieben um Zeilen aus einer Textdatei anzeigen zu lassen und danach zu löschen!
So, meine Frage, wie schreibe ich jetzt die Datei so um, dass ich aus der Textdatei die daten auslesen kann, diese bearbeiten(die eine markierte Zeile) und wieder abspeichern!
danke im voraus
Hier der Code:
So, meine Frage, wie schreibe ich jetzt die Datei so um, dass ich aus der Textdatei die daten auslesen kann, diese bearbeiten(die eine markierte Zeile) und wieder abspeichern!
danke im voraus
Hier der Code:
PHP:
<?php
$datei = "daten.txt"; // Name der Datei
$array = file($datei); // Datei in ein Array einlesen
// Daten löschen
if ($_POST) { // Wurden Daten über $_POST gesendet?
if (count($array) > 0) { // Sind Daten in $array vorhanden?
if (isset($_POST["id"])) { // Ist die Variable $_POST["id"] vorhanden?
if (count($_POST["id"]) > 0) { // Enthällt $_POST["id"] Daten?
for ($zaehler = 0; $zaehler < count($array); $zaehler++) {
// Die Variablen ($kategorie, $beschreibung, $homepage, $datum, $id)
// aus dem Array ($array[$zaehler]) holen. Wichtig ist dabei nur die Variable $id
list($kategorie, $beschreibung, $homepage, $datum, $id) = explode(";", $array[$zaehler]);
foreach ($_POST["id"] as $element) {
if ($element == $id) { // Variablen vergleichen
array_splice($array, $zaehler, 1); // Einen Teilbereich aus dem Array entfernen
}
}
}
// Daten speichern
$text = implode("", $array); // Das Array in einen String zusammenfügen
$handler = fOpen($datei, "w");
fWrite($handler, $text);
fClose($handler);
$array = file($datei); // Geänderte Datei einlesen
}
}
}
}
?>
<form action="loeschen.php" method="post">
<table border="1">
<tr style="background-color: #B9B9B9;">
<th>Kategorie</th>
<th>Beschreibung</th>
<th>Homepage</th>
<th>Datum</th>
<th>X</th>
</tr>
<?php
foreach ($array as $element) {
list($kategorie, $beschreibung, $homepage, $datum, $id) = explode(";", $element);
echo "<tr>";
echo "<td>$kategorie</td>";
echo "<td>$beschreibung</td>";
echo "<td><a href=\"http://www.$homepage\" target=\"_blank\">$homepage</a></td>";
echo "<td>$datum</td>";
echo "<td><input type=\"checkbox\" name=\"id[]\" value=\"$id\"></td>";
echo "</tr>";
}
?>
</table>
<input type="submit" value="Markierte Zeilen löschen">
</form>