特定のフォルダーからファイルを表示し、選択したファイルを削除するための [削除] ボタンを使用して、ドロップダウン リストを作成しようとしています。
ドロップダウンリスト:
<?php
$dirname = "files";
$dir = opendir($dirname);
echo '<form action="delete.php" method="get">';
echo '<select name="file2">';
while(false != ($file = readdir($dir)))
{
if(($file != ".") and ($file != ".."))
{
echo "<option value=".$file.">$file</option>";
}
}
echo '</select>';
echo '<input type="submit" value="Delete" class="submit" />';
echo '</form>';
?>
delete.phpファイル:
<?php
$dirpath = "files";
$file_to_delete = $_POST['file2'];
if ( unlink ($dirpath.'/'.$file_to_delete) ) {
echo $file_to_delete . " deleted.";
} else {
echo "Error.";
}
?>
次に、ファイルを選択して削除を押しようとすると、次のエラーが表示されます。
警告: unlink(files/): Is a directory in /xxx/xxx/xxx/xxx/xxx/xxx/xxx/xxx/delete.php 行 4 エラー。
xxx はプライバシーのために削除されました :) 削除しようとしているファイルはすべて chmod 777 です。削除しようとしているのは単に .txt ファイルです。
ここで何が欠けているのか、何が間違っていたのかわかりません... :/