php delete a single file in directory
unlink('path_to_filename');
will delete one file at a time.
If your whole files from directory is gone means you listed all files and deleted one by one in a loop.
Well you cannot de delete in the same page. You have to do with other page. create a page called deletepage.php
which will contain script to delete and link to that page with 'file' as parameter.
foreach($FilesArray as $file)
{
$FileLink = $Directory.'/'.$file['FileName'];
if($OpenFileInNewTab) $LinkTarget = ' target="_blank"';
else $LinkTarget = '';
echo '<a href="'.$FileLink.'">'.$FileName.'</a>';
echo '<a href="deletepage.php?file='.$fileName.'"><img src="images/icons/delete.gif"></a></td>';
}
On the deletepage.php
//and also consider to check if the file exists as with the other guy suggested.
$filename = $_GET['file']; //get the filename
unlink('DIRNAME'.DIRECTORY_SEPARATOR.$filename); //delete it
header('location: backto prev'); //redirect back to the other page
If you don't want to navigate, then use ajax to make elegant.
http://php.net/manual/en/function.unlink.php
Unlink can safely remove a single file; just make sure the file you are removing it actually a file and not a directory ('.' or '..')
if (is_file($filepath))
{
unlink($filepath);
}