php и перемещение изображений в новые папки - PullRequest
4 голосов
/ 29 июня 2011

В моей папке templates есть изображение, созданное с помощью php с фоновым шаблоном .jpg (хранится в той же папке), и часть текста, отправленного из формы.Он сохраняется как JPG в этой папке.Я хочу скопировать php-построенное изображение в папку uploads, а затем переименовать его в image451.jpg или в любое другое число.Я думаю, что я должен использовать функции copy() и rename() php, но я не могу заставить их работать.Как мне это сделать?

Ответы [ 2 ]

3 голосов
/ 29 июня 2011

Вы должны быть уверены, что ваш веб-сервер имеет доступ на запись в каталог uploads, в котором вы хотите, чтобы они находились. Тогда вы можете просто сделать:

if (!rename("oldfilename.jpg", "/path/to/uploads/image451.jpg"))
{
  echo "oops, something went wrong moving your file.";
}

Мы не знаем, на какой серверной платформе вы работаете, поэтому я не могу точно сказать, как проверить разрешения на запись в каталог, если вы не добавите эту информацию в свой вопрос.

2 голосов
/ 29 июня 2011

Прежде чем пытаться переместить туда новый файл, следует проверить, доступен ли пункт назначения.

$dest_dir = "/path/to/uploads/";
$src_file = "path/to/orig/file.jpg";
if (is_writeable($dest_dir)) {
    $dest_file = $dest_dir . DIRECTORY_SEPARATOR . basename($src);
    if (false == rename($src, $dest_file)) {
        trigger_error('Could not move file', E_USER_ERROR);
    }
}
else {
    trigger_error('Destination dir is not writeable', E_USER_WARNING);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...