есть код который показывает какие файлы лежат в папке. Затем нужно по выбранным чекбоксам удалить файлы. Делаю так: Код (Text): $pth_src=$_SERVER['DOCUMENT_ROOT'].'/test/';//путь к папке $handle=opendir($pth_src); while($file=readdir($handle)) { if($file != "." && $file != "..") {//исключаем переход на верхний уровень $parts=explode(".",$file); $nuno=$parts[count($parts)-1]; $nuno2=strtolower($nuno); if ($nuno2=='jpg' || $nuno2=='jpeg' || $nuno2=='gif' || $nuno2=='png') { $i++; $pictures[$i]=$file; echo "<TR align='center' valign='center'>"; echo "<TD align='right'>"; echo "<INPUT type='checkbox' name='pic".$i."' value='".$i."'>"; echo "</TD>"; echo "<TD align='left'>"; echo "<span align='center'><a href='javascript:openWinImg();'>".$pictures[$i]."</a></span><br />"; echo "</TD>"; echo "</TR>"; }}} echo "<TR align='center'>"; echo "<TD colspan='2'>"; echo "Меню"; echo "</TD>"; echo "</TR>"; echo "<TR align='center'>"; echo "<TD align='right'>"; echo "<INPUT type='submit' name='add_pic' value='Добавить' onClick='load_img();'>"; echo "</TD>"; echo "<TD align='center'>"; echo "<INPUT type='submit' name='del_pic' value='Удалить'>"; echo "</TD>"; echo "</TR>"; echo "</TABLE>"; echo "</form>"; if ($_POST['del_pic']) { for ($k = 1; $k <= count($pictures); $k++) { if ($_POST['pic'.$k] == $k) { unlink("test/".$pictures[$k]); unset($_POST['pic'.$k]); echo "pic".$k."=".$_POST['pic'.$k]; } } } Проблема в том что функция unlink удаляет не те файлы какие нужно, а почему не понятно. Помогите что знает в чем дело[/code]
А слабо проверить, то что получаешь в POST? Когда чекбокс не выбран, то он и не передается. Тоесть в твоем случае будут удаляться такое количество файлов - сколько чекбоксов ты отметил. И заметь удаляться первые файлы в списке
добавил эхо перед unlink и посмотрел что передает пост. Пост передает правимльные значения. Если выбран 3-ий чекбокс то пишет pic3=3 и т. д. Проблема в том что после нажатия кнопки удаления файлов сам файл остается на странице отображаться. А если нажимаешь обновить, по всплывает сообщение о повторной отправке данных и выбранные мной чекбоксы а вернее их значения опять наверное отправляются в пост. И удаляются файлы. Как этого избежать чтоб при обновлении страницы такого не было?
то что файл остаётся на странице, если он конечно физически удаляется, это от того что удаление в коде у тебя идёт уже после вывода а не вначале, тобишь он сначала выводит всё а потом уже удаляет