Написал скриптик для загрузки изображений на сервер, но вылезает ошибка:
Warning: copy(images/111.jpg) [function.copy]: failed to open stream: Permission denied in /var/www/...../upload.php on line 39
Warning: rename(images/111.jpg,images/img_20110111142154.jpg) [function.rename]: No such file or directory in /var/www/......./upload.php on line 49
Порылся в интернете, все говорят, что нужны права доступа к папке хранения временных файлов 777. Хорошо, сделал 777 - ничего не поменялось.
В чем проблема может быть?
Вот скрипт, кому не лень, посмотрите:
CODE (htmlphp):
скопировать код в буфер обмена
скопировать код в буфер обмена
- <html>
- <head><title>Обработка</title></head>
- <body>
- <?php
- if(isset($_POST['userfile'])) {$userfile = $_POST['userfile'];}
- if(isset($_POST['submit'])) {$submit = $_POST['submit'];}
- if(isset($submit)){
- $maxwidth = 1600; //Максимальная ширина загружаемого изображения
- $maxheight = 1200; //Максимальная высота загружаемого изображения
- $allowed_filetypes = array('.jpg','.JPG'); //Поддерживаемые форматы
- $maxs = 2048; // Максимальный размер файла в байтах
- $upload_path = "images/";
- $filename = $_FILES['userfile']['name']; //Имя файла
- $sizefile = getimagesize($_FILES['userfile']['tmp_name']);//Параметры изображения
- $size = filesize($_FILES['userfile']['tmp_name'])/1024; //Переводим размер изображения в Кбайты
- $size = ceil($size); //округляем размер файла до целого числа
- if(!in_array($ext,$allowed_filetypes)){
- echo "<p>Вы <strong>не выбрали изображение</strong> для загрузки или данный <strong>формат файлов не поддерживается</strong></p>";
- }
- else{
- if($size > $maxs or $size == 0){ //Если размер файла больше максимального или равен 0 выдаем ошибку
- echo "<p>Разрешается загружать файлы не более 2 Мб</p>";
- }
- else{
- if($sizefile[0] > $maxwidth or $sizefile[1] > $maxheight) {// Если разрешение не соответствуют выдаем ошибку
- echo "<p>Файл, который ва пытаетесь загрузить, имее разрешение <strong>$sizefile[0] x $sizefile[1]</strong>. Разрешается загружать фото не боле чем <strong>$maxwidth х $maxheight</strong> пикселей</p>";
- }
- else{
- if(isset($filename)){// Если имя файла существует производим загрузку
- if(copy($_FILES['userfile']['tmp_name'], $upload_path.$filename)){
- echo "<p>Файл <strong>".$filename."</strong> успешно загружен</p>";
- }
- }
- else {
- echo "<p>Файл <strong>".$filename."</strong> не загружен</p>";
- }
- $new_name = "img_".date("YmdHis").".jpg";
- //Переименуем файл на всякий случай что бы не было совпадений
- rename($upload_path.$filename, $upload_path.$new_name);
- //Запомним новое имя
- $filename = $new_name;
- }
- }
- }
- }
- else{
- echo "<p>Неверный формат запроса</p>";
- }
- ?>
- </body>
- </html>