2014-06-10 5 views
0

업로드 파일 용 웹 양식이 있어야합니다. 업로드 된 파일을 원본 이름으로 저장하고 싶습니다. 내가 서버에 tmp_name 파일이업로드 파일을 원래 이름으로 저장하십시오.

<form action="" enctype="multipart/form-data" method="POST"> 
    <input type="file" name="file" /> <br /> 
    <input type="submit" value="Upload" /> 
</form> 

<?php 
    if (($_SERVER['REQUEST_METHOD'] == 'POST')) { 
    $fieldname = $_REQUEST['file']; 
    $tmpfile = $_FILES[$fieldname]['tmp_name']; 

    $info = pathinfo($tmpfile); 
    $filename = 'newfile.' . $info['extension']; 

    $uploaddir = 'uploads/'; 
    $uploadfile = $uploaddir . $filename; 

    if(move_uploaded_file($tmpfile, $uploadfile)) { 
     echo $uploadfile; 
    } 

    } 
?> 

하지만 사용자 파일 업로드 후 :

나는이 PHP 코드가 있습니다.

필요한 정보 : 사용자 업로드 파일 photo123.jpg - 서버에 photo123.jpg을 입력하고 싶습니다. 사용자 firefox.exe 업로드 - 나는 firefox.exe

+0

당신이 구글 시도해 봤어으로 시도? – Naruto

+0

이 'http : // www.w3schools.com/php/php_file_upload.asp'를 확인하십시오. –

답변

1

$_FILES['file']['name']

if (($_SERVER['REQUEST_METHOD'] == 'POST')) { 
    $tmpfile = $_FILES['file']['tmp_name']; 
    $filename = $_FILES['file']['name']; 
    $uploaddir = 'uploads/'; 
    $uploadfile = $uploaddir . $filename; 
    if(move_uploaded_file($tmpfile, $uploadfile)) { 
     echo $uploadfile; 
    } 
    } 
1

이 시도하려는 :

$fieldname = $_FILES['file']['name']; 

대신 $fieldname = $_REQUEST['file'];

+0

그것이 효과가 있는지 알려주십시오. – AkshayP

+0

이 방법이 전혀 도움이되지 않습니다. 공유 된 코드로 판단 할 때'$ fieldname'은 올린 파일 이름이 아니라''file "'이어야합니다. –

+0

@Jack, 고마워, 내 대답을 업데이 트했습니다. – AkshayP

관련 문제