Hallo,
zum löschen einer Datei und zum Austragen dieser aus einer Liste nutze ich folgendes Script:
<?php
$datei = "handle_sg.txt"; // Name der Datei
$array = file($datei); // Datei in ein Array einlesen
$Id = $_POST["Id"];
// 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($Stelle, $templink, $timestamp, $status, $Name, $Vorname, $email, $Stellensuche, $VGS_vorh, $VGS, $Id, $Ip, $PubDate, $Comment, $Request) = 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
}
}
}
unlink ($templink);
}
$ref = $HTTP_SERVER_VARS["HTTP_REFERER"];
header('Location: '.$ref.' ');
?>
Das funktioniert auch ganz gut.
Jetzt möchte ich das Script umbauen:
Die Zeile die gelöscht wird, soll nun geändert wieder eingefügt werden. Ich versuche nun erstmal diese Zeile per echo auszugeben:
echo $array[$Id];
funktioniert lieder nicht.
echo $array[2]; gibt Zeile drei aus. ICh möchte aber genau die Zeile ausgegeben bekommen, die zur Id gehört.
Könnt ihr mir das vielleicht ein bisschen auf die Sprünge helfen?
Lg,
Nad