Когда я загружаю / копирую изображение, оно терпит неудачу, когда я нажимаю обновить / отправлять это работает - PullRequest
0 голосов
/ 30 мая 2009

Хорошо, я работаю над небольшим разделом проекта и загружаю изображение, а затем копирую его, чтобы потом изменить его размер. Происходит следующее: когда я нажимаю кнопку «Отправить», загрузка завершается сбоем, но если я нажимаю кнопку «Обновить / переслать информацию», это удается ...

    $uploadFile = $uploadDir . $imageName;
    $imageName2 = $front[0]."_large\.".$front[1];
    $uploadFile2 = $uploadDir . $imageName2;

        if(move_uploaded_file($imageTemp,$uploadFile))
       {
           if(!copy($uploadFile, $uploadFile2)) die("Can't copy $uploadFile2");
           }

В случае сбоя выводится сообщение «Не удается скопировать». Итак, по какой-то причине он не получает имя файла для копирования, пока я не нажму кнопку «Обновить»?

Levi

Ответы [ 2 ]

1 голос
/ 30 мая 2009

Вы хотите экранировать точку в $ front [0]. "_ Large \.". $ Front [1]; Вы думали о регулярном выражении? в противном случае это может быть попытка сохранить в несуществующий каталог.

Вы пытались загрузить другой файл, можете ли вы напечатать_r () массив $ _FILES, я застрял, прежде чем выяснить, почему массив $ _FILES пуст, и в моем теге формы нет многочастных данных формы или изображение поврежден и поток загрузки обрезан по php.

0 голосов
/ 06 апреля 2015

ниже работает нормально для меня;

HTML-файл:

<!DOCTYPE html>
<html>
<title>Stack HTML</title>
<link rel="stylesheet" href="../../repo/css/bootstrap.css" type="text/css" />
<script src="https://code.jquery.com/jquery-2.1.3.js"></script>
<head>
</head>
<body>
    <div class="container">
        <form method="post" action="resize.php" enctype="multipart/form-data">
            <input type="file" name="image" />
            <input type="submit" name="add" value="Add" />
        </form>
    </div>
</body>
</html>

resize.php

<?php
    $uploadDir = 'uploads/';
    $uploadLargeDir = 'uploads/large/';

    $imageName = $_FILES['image']['name'];
    $imageTemp = $_FILES['image']['tmp_name'];
    $uploadFile = $uploadDir . $imageName;


    if(move_uploaded_file($imageTemp,$uploadFile)) {
        $front = explode('.', $imageName);
        $imageName2 = $front[0]."_large.".$front[1];
        $uploadFile2 = $uploadLargeDir . $imageName;
         if(!copy($uploadFile, $uploadFile2)) {
            die("Can't copy $uploadFile2");
         } else {
            die('Levi! Success');
         }
    }
?>
...