[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Удаление картинки из папки
kvant355
Здравствуйте, мне нужно реализовать добавление и удаление картинок из папки
Вот что у меня получилось:



index.php
<html>
<
head>
<
link rel="stylesheet" type="text/css" href="style.css" />
<
meta http-equiv="content-type" content="text/html; charset=UTF-8">

<
title>Загрузка файла</title>
</
head>
<
body>
<
p><strong>Выбирите файл для загрузки:</strong><br />
<
form enctype="multipart/form-data" method="post">
<
input type="file" name="userfile" />
<
br />
<
input type="submit" value="Загрузить" name="button">
</
form>

<?php
//Выполняем код только при нажатии на кнопку
if($_POST['button']== true){
//Для начала проверим не пытаются ли нам загрузить файл с расширением .php и т.д
$path = array(".php",".php4",".php3",".phtml",".pl");
foreach ($path as $item){
//Проверяем регулярным выражением регистр
if(preg_match("/$item\$/i", $_FILES['userfile']['name'])) {
echo "Разрешено загружать, только картинки<br />";
echo "<a href='index.php'><<< Назад</a>";
exit();
}
}

//Проверим на ошибки, если они есть прекращаем скрипт и создаем отчет
if($_FILES['userfile']['error'] != 0){
//Создаем файл и записываем него код ошибки, а так же удаляем временный файл
$error = fopen("error/error.dat","wb");
if(fwrite($error,$_FILES['userfile']['error']) == false){
echo "Ошибка записи в файл!!!";
exit();
}else
{
echo "<b>error.dat</b> - был успешно создан!   <a href='error/error.inc'>Смотреть код ошибки</a>";
//Удаляем временный файл
unlink($_FILES['userfile']['tmp_name']);
//выходим
exit();
}
fclose($error);
}
//Определяем директорию, куда будем загружать изображения
$dir = 'img/';
$file = $dir.basename($_FILES['userfile']['name']);

if (move_uploaded_file($_FILES['userfile']['tmp_name'], $file)) {
echo "Файл успешно загружен.<br>";
} else {
echo "Произошла ошибка";
exit;
}
}


$dir = 'img/'; // Папка с изображениями
$cols = 6; // Количество столбцов в будущей таблице с картинками
$files = scandir($dir); // Берём всё содержимое директории
echo "<table>"; // Начинаем таблицу
$k = 0; // Вспомогательный счётчик для перехода на новые строки
for ($i = 0; $i < count($files); $i++) { // Перебираем все файлы
if (($files[$i] != ".") && ($files[$i] != "..")) { // Текущий каталог и родительский пропускаем
if ($k % $cols == 0) echo "<tr>"; // Добавляем новую строку
echo "<td>"; // Начинаем столбец
$path = $dir.$files[$i]; // Получаем путь к картинке
echo "<a href='$path'>"; // Делаем ссылку на картинку
echo "<img src='$path' alt='' width='100' />"; // Вывод превью картинки
echo "<form action=\"delete.php\" method=\"post\">";
echo "<input type=\"image\" src=\"button.png\" name=\"delite\" class=\"delete\" />";
echo "</form>";
echo "</a>"; // Закрываем ссылку
echo "</td>"; // Закрываем столбец
/* Закрываем строку, если необходимое количество было выведено, либо данная итерация последняя */

if ((($k + 1) % $cols == 0) || (($i + 1) == count($files))) echo "</tr>";
$k++; // Увеличиваем вспомогательный счётчик
}
}

echo "</table>"; // Закрываем таблицу

?>

</body>

</
html>


delete.php

<?php
unlink($path);
header("Location: index.php");

?>


после нажатия на кнопку выдает ошибки

Warning: unlink() [function.unlink]: Invalid argument in Z:\home\photo\www\delete.php on line 2

Warning: Cannot modify header information - headers already sent by (output started at Z:\home\photo\www\delete.php:2) in Z:\home\photo\www\delete.php on line 3

Много где рылся, а ответа не нашел, очень прошу помощи...
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.