IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   php: загрузка картинки на сервер (http://www.imho.ws/showthread.php?t=56741)

Psionic Vision 17.04.2004 01:15

php: загрузка картинки на сервер
 
Нужно написать следующую функцию:
Вы вводите в окошко имя картинки - gif\jpg - а скрипт переименовывает его в допустим в 1.jpg. После чего - загружает его в папку images/av/
При этом, если такой файл уже есть, картинка должна быть перезаписана. Т.е. записана поверх имеющейся на сервере.
Как это сделать?

Hubbitus 18.04.2004 03:13

А в чем проблема?
Используешь форму с <input file...> и загружаешь на сервер, а дальше манипулируй им как хочешь.

А вообще чего тебе надо? Если полный пример, то ты даже не написал на каком языке тебе стребуется...

RaZEr 23.04.2004 14:40

Цитата:

Если полный пример, то ты даже не написал на каком языке тебе стребуется...
Написал. Смотри внимательней.

Hubbitus 23.04.2004 16:29

Точно, не заметил, прошу прощения....
Но проблема все-равно не понятна, чем не устраивает стандартный аплоад...

RaZEr 23.04.2004 17:09

2 Hubbitus: Посидишь подольше на форуме, - поймешь ;)

Psionic Vision 23.04.2004 23:23

Вот я и спрашиваю - как делается аплоад?
вы мне дайте название функции а я про нее почитаю :)

RaZEr 23.04.2004 23:26

http://www.imho.ws/showthread.php?t=56807

Hubbitus 23.04.2004 23:36

move_uploaded_file(). В официальном МАНе же есть даже такой раздел и подробно с примерами все разобрано!!!

Psionic Vision 23.04.2004 23:48

Спасибо, щас буду разбираться...
только прочтя ту тему, я так и не понял одной вещи:
когда файл отправляется через форму, он попадает в массив HTTP_POST_FILES а дальше как к нему обращаться?

Hubbitus 24.04.2004 15:15

В той теме же все расписано:
Цитата:

$_FILES['file_1']['name'] - имя файла на компе пользователя
$_FILES['file_1']['type'] - миме тип файла
$_FILES['file_1']['size'] - размер файла
$_FILES['file_1']['tmp_name'] - времменное имя, которое можно использовать с функцией move_uploaded_file()
$_FILES['file_1']['error'] - код ошибки. если все ок, то вроде 0... (php 4.2.0 и выше)
($_FILES и $HTTP_POST_FILES это считай одно и тоже, смотри разницу версий PHP)
Где file_1 - имя поля твоей формы где выбирался файл!

P.S. А просто структуру этого массива, например var_dump($HTTP_POST_FILES) посмотреть не судьба?

NoKawaii 26.04.2004 13:32

кстати не обязательно использовать функцию move_uploaded_file(). Можно все анологично сделать через copy. Всегда пользуюсь только ею. Работает анологично - copy($upload_file, ./images/)
пишу обычно через условие
Код:

//$upload_file - то что присылает нам форма
//проверяем являеться файл рисунком
if ($upload_file!="")
{
if (($fotoimg_type == "image/pjpeg") or ($fotoimg_type == "image/jpeg")) $ftype = "jpg";
elseif ($fotoimg_type == "image/gif") $ftype = "gif";
else echo "Недопустимое имя файла";
//Копируем барахло
//Генирируем случайное число для названия файла
mt_srand ((double)microtime() * 1000000);
$num = mt_rand(10000000, 99999999);
//$copyto - путь куда будем копировать файл
//Сохраняем это все в формате 01010101.jpg
$copyto = "./images/$num.$ftype";
if (!copy($fotoimg, $copyto)) eсho "Ошибка ! :(";
else eсho "файл загружен :)";
//Не забываем на католог images поставить права на запись !!


NoKawaii 26.04.2004 17:53

To Hubbitus
Кстати насчет $_FILES['file_1']['error'] - еще не слышай...
Огромное спасибо,.. уже опробывал... все выдает на ура.
PHP 4.3.2


Часовой пояс GMT +4, время: 07:09.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.