vitrolov
Постоялец
- Регистрация
- 10 Июн 2012
- Сообщения
- 132
- Реакции
- 131
- Автор темы
- #1
Есть небольшой скрипт, который я взял из книги David Powers php solutions dynamic web design . Скрипт меняет название картинки ,если такое название уже есть, например, мы загружаем картинку с названием menu.jpg, если такая есть, то изображение автоматически меняется на menu_1.jpg, или на menu_2.jpg, думаю, суть понятна.
Дело в том, что там используется ООП, я переделал скрипт для себя, изображение он загружает, но название картинок остается прежним. Не могу понять в чем проблема. Надеюсь, что кто-то объяснит мне в чем моя ошибка
Да, и еще я только начал изучать РНР, не надо зразу обзываться Проверку размеров, и типов загружаемых файлов занимается другой скрипт, это я так, на всяк случай написал.
И еще одно, можно ли использовать функцию file_exists() вместо in_array(). Одним словом, буду рад любым вашим замечаниям
Кстати, ссылка на книгу Для просмотра ссылки Войдиили Зарегистрируйся очень-очень полезная, для тех, кто изучат РНР. Рекомендую, книга очень отличается от многих изложением материала
Дело в том, что там используется ООП, я переделал скрипт для себя, изображение он загружает, но название картинок остается прежним. Не могу понять в чем проблема. Надеюсь, что кто-то объяснит мне в чем моя ошибка
Да, и еще я только начал изучать РНР, не надо зразу обзываться Проверку размеров, и типов загружаемых файлов занимается другой скрипт, это я так, на всяк случай написал.
Код:
<?php
if (isset($_POST['submit']))
{
$destination = 'image/';
$name = $_FILES['image']['name'];
if (move_uploaded_file($_FILES['image']['tmp_name'], $destination . $name ))
{
// Проверяем есть ли такое название
$existing = scandir($destination);
// Если есть запускаем этот блок
if (in_array($name, $existing))
{
// Получаем название изображение без формата
$dot = strrpos($name, '.');
$base = substr($name, 0, $dot);
$extension = substr($name, $dot);
$i = 1;
// Эта часть должна переименовать картинку!!
do
{
$name = $base . '_' . $i++ . $extension;
}
while (in_array($name, $existing));
echo "File successfully uploaded!";
}
}
else
{
echo "Error! Please, try again later";
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<form action="" method="POST" enctype="multipart/form-data">
<label for="image">Upload image: </label>
<input type="file" name="image" id="image" /><br />
<input type="submit" name="submit" value="Upload image" />
</form>
</body>
</html>
Кстати, ссылка на книгу Для просмотра ссылки Войди
Последнее редактирование: