Eintrag aus txt-datei löschen

if(isset($did) && $did != "") {

bei dieser zeile kommt die echo ausgabe wird also löschung durchgeführt und der eintrag ist auch weg.
nur der verdoppelt alle zeilen in der txt wenn ich auf einen del link klicke.

ich blicke jetzt gar net mehr durch.
hier nochmal das ganze script:
<?php
$eintrag=file('termine.txt');

if(isset($did) && $did != "") {
$eh = fopen("termine.txt", "w");
for ($i=count($eintrag)+1; $i>=0; $i--) {
if ($i != $_GET["did"])
fputs ($eh, $eintrag[$i]."\r\n");
}
fclose($eh);
$eintrag = file("termine.txt");

echo "Test bla bla";
}

$ausgabe="<br>";
$temp=count($eintrag)-1;
for($i=$temp;$i>=0;$i--) {
$element=explode('~',$eintrag[$i]);
$ausgabe .= "<tr>\n";
$ausgabe .= "<td width=\"20%\"><font size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\">".$element[0]."</font></td>\n";
$ausgabe .= "<td width=\"70%\"><font size=\"2\" face=\"Verdana, Arial, Helvetica, sans-serif\">".$element[1]."</font></td>\n";
$ausgabe .= "<td witdh=\"10%\"><font size=\"1\" face=\"Verdana, Arial, Helvetica, sans-serif\">
<a href=\"delete.php?action=delete&did=".$i."\">del</a>
</font></td>\n";

$ausgabe .= "</tr>\n";
}

echo "<table width=\"500\" border=\"1\"> $ausgabe </table>";

?>


hier nochmal der link zum script:
delete.php
 
wenn ich in die txt datei was eintrage macht er zunächst einen eintrag und danach einen zeilenumbruch (\n).
wie kann ich ererichen das er erst den zeilenumbruch macht und dann den eintrag weil der nähmlich im löschscript die neue leere zeile als eintrag erkennt und da logischerweise nix steht.

hier das script:
<?php

if($date AND $description)
{

IF(file_exists('termine.txt')){$ausgabe="\n";}
$comment=fopen('termine.txt','a');
$ausgabe=$ausgabe.$date."~".$description;
fputs($comment,$ausgabe);
fclose($comment);

echo "Termin wurde eingetragen
<a href=\"admin.php\">zur&uuml;ck</a>";
}

else
{
echo "Es wurden nicht alle Felder ausgefüllt!!!";
}

?>

Ach ja das löschen funktioniert jetzt
 
warum fragst du net einfach ab ob die zeile leer ist und wenn ja soll er sie net ausgeben ?

PHP:
<?
$file = file("data.txt");
for($i = 0;$i>count($file);$i++) {
    if(!$file[$i] == "") {
        ausgabe();
    }
} 
?>
 
Zurück