2013-07-29 3 views
-1

У меня есть форма для загрузки изображений, я хочу изменить название изображения на определенное имя.Изменить имя загруженного изображения на определенное имя

Это мой код:

<?php 

// A list of permitted file extensions 
$allowed = array('png', 'jpg', 'gif','zip'); 

if(isset($_FILES['upl']) && $_FILES['upl']['error'] == 0){ 

$extension = pathinfo($_FILES['upl']['name'], PATHINFO_EXTENSION); 

if(!in_array(strtolower($extension), $allowed)){ 
    echo '{"status":"error"}'; 
    exit; 
} 

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.$_FILES['upl']['name'])){ 
    echo '{"status":"success"}'; 
    exit; 
} 
} 

echo '{"status":"error"}'; 
exit; 
+0

ТАК КАКОЙ-ЛИБО ошибка, которую вы получаете или проблема, с которой вы сталкиваетесь? –

+0

Все, что вы делаете, дает ему то же имя, что и раньше. PHP не делает этого, но вы. Посмотрите на второй аргумент функции 'move_uploaded_file' – Flosculus

ответ

0
if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/your_own_name_here.'$extension)){ 
    echo '{"status":"success"}'; 
    exit; 
} 
+0

это доцентная работа, возможно ли, что gv ua ссылка на downlod полный исходный код, так что вы можете увидеть полную реализацию – user2617870

+0

дайте мне ссылку – sudhakar

+0

http://tutorialzine.com/2013/05/mini-ajax-file-upload-form/# comment-85865, скачайте оттуда и посмотрите, как я говорю, если в конце концов вы сделаете правильные изменения в том, что я хочу, вы можете оставить его и опубликовать, действительно оцениваем – user2617870

0

вы должны изменить $ _FILES [ 'у.п.л.'] [ 'имя'] в следующем коде

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.$_FILES['upl']['name'])){ 

, например:

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/nameOfTheFile.jpg')){ 
+0

это доцентная работа, возможно ли, что gv ua ссылка на downlod полный исходный код, так что вы можете увидеть полную реализацию – user2617870

0

Вы можете добавить лет ur имя пользовательского файла в вызывающей функции move_uploaded_file. как,

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.'yourcustomname'.$extension)){ 

Если вы хотите добавить уникальное имя, то вы можете использовать, как,

if(move_uploaded_file($_FILES['upl']['tmp_name'], 'uploads/'.time().$extension)){ 
+0

it dosent work, is возможно, i gv ua ссылка на downlod полный исходный код, так что вы можете увидеть полную реализацию – user2617870

0

Изменено отражать ваш вопрос, будет производить случайное число на основе текущего времени и приложить расширение из первоначально загруженного файла.

0
$temp = explode(".", $_FILES["file"]["name"]); 

$newfilename = round(microtime(true)) . '.' . end($temp); 

move_uploaded_file($_FILES["file"]["tmp_name"], "../img/imageDirectory/" . $newfilename); 
+0

несколько деталей о том, что было бы именем файла в конце было бы здорово –

Смежные вопросы