2016-10-31 3 views
0

HTML, JavaScript 및 PHP를 사용하여 웹 서버에 파일을 업로드하려고합니다.파일 업로드시 JQuery 오류

내 HTML은 다음과 같습니다 : I 업로드하고 파일을 제출 하나의 버튼을 사용하기 때문에

<form method="post" enctype="multipart/form-data" name="uploadForm"> 
    <input type="file" name="uploadFile" onchange="uploadplz();"> 
    <!-- <input type="submit" name="upload_submit" value="Upload"> --> 
</form> 

제출 버튼이 주석. JavaScript 함수를 호출하는 onchange 특성이 있습니다. 그런 다음 JavaScript 함수는 AJAX 호출을 사용하여 PHP 함수를 호출합니다.

내 자바 스크립트/AJAX는 다음과 같습니다

<script type="text/javascript"> 
    function uploadplz() { 
     $.ajax({ 
      type: "POST", 
      url: "file.php", 
      data: "uploadForm", 
      success: function(response) { 
       alert(response); 
      } 
     }); 
    } 
</script> 

의 PHP는 isset은 다음과 같습니다

if(isset($_POST["uploadForm"])) { 
    upload_file(); 
} 

PHP의 기능은 다음과 같습니다

:

function upload_file() { 
    $dir = "files/"; 
    $target_file = $dir.basename($_FILES["uploadFile"]["name"]); 

    echo $target_file."</br>"; 

    if(move_uploaded_file($_FILES["uploadFile"]["tmp_name"], $target_file)) { 
     echo $target_file." uploaded successfully.</br>"; 
    } else { 
     echo "Error uploading</br>"; 
    } 
} 

이 버튼을 사용하여, PHP는 잘 작동합니다. 즉, 파일을 업로드합니다. 하나의 단추를 사용하려고 할 때 AJAX가 잘못되었다고 가정합니다. PHP 함수는 Error uploading 메시지와 빈 파일 이름을 반환합니다.

제안 사항?

답변

1

문자열 "uploadForm" 만 업로드 중이며 File 개체는 업로드하지 않습니다. FormData()을 사용하여 <form>을 업로드하십시오. jQuery Ajax File Upload

관련 문제