Можно ли изменить имя файла после его загрузки? - PullRequest
0 голосов
/ 19 мая 2011

Есть ли способ для сценария php выбрать имя для файла после того, как он был загружен пользователем с помощью формы HTML? Я хочу разрешить пользователям загружать аватар для своей учетной записи и хотел бы, чтобы он назывался с использованием их идентификатора пользователя вместо того, чтобы называть его на своем компьютере. Я использую базовую HTML-форму для загрузки, которая допускает только файлы в формате jpegs и png с ограничением в 10 МБ, аналогично коду загрузки файла, указанному на http://www.w3schools.com/php/php_file_upload.asp. Любая помощь, которую вы можете оказать, будет принята с благодарностью.

Ответы [ 3 ]

2 голосов
/ 19 мая 2011

Поместите желаемое имя файла во второй аргумент move_uploaded_file().

1 голос
/ 19 мая 2011
$userid = 5; // say you fetch it from database
$ext = explode("\/",$_FILES["file"]["type"]); //extract the file extension
move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$userid.$ext[1]);

ОБНОВЛЕНИЕ: Я думаю, вам не нужно извлекать расширение файла.

move_uploaded_file($_FILES["file"]["tmp_name"], "upload/".$userid);
1 голос
/ 19 мая 2011

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...