alexander_dog
Well-Known Member
- Регистрация
- 19.12.2009
- Сообщения
- 80
Здравствуйте ВСЕ!!!
Назрел вопрос про удаление выбранной группы файлов с сервера.
Для удаления одного файла используем вот этот код
А как удалить группу выбранных файлов ?
Приведу ниже код выбора файлов при удаллении из базы данных
Отмечаем нужные файлы index.php
Обработчик delit.php
Выдаёт ошибку:
Warning: unlink() expects parameter 1 to be string, array given in Z:\home\localhost\www\delit.php
кажется я не правильно, что-то делаю в этом куске кода
Назрел вопрос про удаление выбранной группы файлов с сервера.
Для удаления одного файла используем вот этот код
PHP:
<?php
$filename = 'c:/123.jpg';
unlink($filename);
// удаляем файл с именем
// c:/123.jpg
?>
Приведу ниже код выбора файлов при удаллении из базы данных
Отмечаем нужные файлы index.php
PHP:
<form action="delit.php" method="post">
<?php
$as=$_SESSION['user'];
echo "<table width='600' border='0' cellspacing='0' cellpadding='0' align='center'><tr>";
$result22 = mysql_query ("SELECT * FROM user WHERE name = '$as' ORDER BY id ",$db);
if (empty($result22))
{
echo "<div class='text' align='center'><hr>У меня ещё нет файлов.</div>";
echo "</tr></table>";
}
else
{ echo $myrow["text2"];
while($myrow22 = mysql_fetch_array($result22))
{$myres22[]=$myrow22;}
for($i=0;$i<count($myres22);$i++)
{
printf("<td align='center' width='260' valign='top'><p class='text_ishodnik'>Дата : %s</p><p class='text_ishodnik'>Размер : %s x %s</p>
<input name='iid[]' type='checkbox' value='%s'>
<a href='%s' rel='lightbox' class='text_ishodnik' alt='%s' title='%s'><img src='%s' alt='%s' title='%s' class='border'><br>%s</a><br><br>
</td>",$myres22[$i]["data"],$myres22[$i]["wid"],$myres22[$i]["hei"],$myres22[$i]["id"],$myres22[$i]["file_big"],
$myres22[$i]["text"],$myres22[$i]["text"],$myres22[$i]["file"],$myres22[$i]["text"],$myres22[$i]["text"],$myres22[$i]["text"]);
if(($i+1)%$k==0) {echo "</tr><tr>";}
else {}}
echo "</tr></table>";
echo"<p> <input name='submit' type='submit' class='sbutton' value='Удалить'></p>
</form>"; }
?>
PHP:
<?php
// Удалить сразу несколько записей можно при
// помощи запроса "DELETE FROM base WHERE id IN (1,3,5,7)"
// Получаем список отмеченных флажков
$type = $_POST['iid'];
if(!empty($type))
{
// Начинаем формировать переменную, содержащую этот список
// в формате "(3,5,6,7)"
$query = "(";
foreach($type as $val) $query .= "$val,";
// Удаляем последнюю запятую, заменяя её закрывающей скобкой )
$query = substr($query, 0, strlen($query) - 1).")";
// Завершаем формирование SQL-запроса на удаление
$query = "DELETE FROM user WHERE id IN ".$query;
// Выполняем запрос
if(!mysql_query($query))
{
echo mysql_error()."<br>";
echo $query."<br>";
}
}
if ($query == 'true') {echo "<p class='text_2'><br><br><b>Выбранные файлы не удалены ! Попробуйте ещё раз !</b></p> <p>Переадресация ...</p>";
/* Здесь происходит рефреш */
echo "<html><head>
<meta http-equiv='Refresh' content='5; URL=index.php'>
</head></html>";
}
else
{
$filename = $type;
unlink($filename); // удаляем файл с именем $type
echo "<p class='text_2'><br><br><b> Выбранные файлы удалены !</b></p>";
/* Здесь происходит рефреш */
echo "<html><head>
<meta http-equiv='Refresh' content='5; URL=index.php'>
</head></html>";
}
?>
Warning: unlink() expects parameter 1 to be string, array given in Z:\home\localhost\www\delit.php
кажется я не правильно, что-то делаю в этом куске кода
PHP:
else
{
$filename = $type; // $type - массив имён удаляемых файлов
unlink($filename); // удаляем файл с именем $type
echo "<p class='text_2'><br><br><b> Выбранные файлы удалены !</b></p>";