Aber du strukturierst dein Projekt nicht richtig, denn sonst hättest du das Problem gleich gar nicht. Ich wies ja schon auf das EVA-Prinzip hin. Werte zuerst die Eingbedaten aus und lösch die Datei. Erstelle dann die Ausgabe, denn dann ist die gelöschte Datei nicht mehr im Dateilisting enthalten.
Lo!
Danke,
ich habe es zwar gelesen, wurde abelenkt und habe es dann vergessen.
Folgende Änderung funktioniert, ist das so o.k.?
<script language="php">
if (isset($_POST['submit'])) {
$datei = $_POST['del'];
if(!empty($datei)) {
if(file_exists('doku/pdf/' . $datei))
{
@unlink('doku/pdf/' . $datei);
echo "";
}
else
{
echo "Datei existiert nicht mehr!<br />\n";
}
}
}
$verzeichnisname = "./doku/pdf/";
$verzeichnis = opendir($verzeichnisname);
while($eintrag = readdir ($verzeichnis))
{
$test = $verzeichnisname . "/" . $eintrag;
if(is_dir($test) or (($eintrag==".htaccess") or ($eintrag=="verboten.html")))
{
/* echo "<!-- $eintrag -->\n"; */
}
else
{
echo "<tr>\n<td align=\"left\"><a href=\"doku/pdf/$eintrag\">$eintrag</a></td>\n";
echo "<td align=\"right\">" . filesize($test) . " Byte</td>\n";
echo "<td align=\"center\">";
echo "</td>\n";
echo "<td align=\"left\">" . strftime("%d. %b. %Y, %H:%M", filemtime($test)) . "</td>\n";
echo "<td align=\"center\">";
echo "<form method=\"POST\" target=\"_self\" action=\"\">
<input type=\"hidden\" name=\"del\" value=\"$eintrag\" />
<input type=\"submit\" name=\"submit\" value=\"Löschen\" />
</form>
";
echo "</td>\n";
}
}
closedir($verzeichnis);
</script>