2012-06-30 27 views
0

我有一個HTML表單,我在其中輸入文本字段並最終將圖像文件上傳到服務器。 (HTML file:< input type =「file」name =「filename」/ >) 我使用Ajax技術和HTTP POST請求來執行此任務。使用AJAX HTTP POST文件上傳和發送文本框數據

但我無法上傳文件,但可以看到數據庫中的文本字段值。我試圖使用getimagesize($ _ FILES ['filename'] ['tmp_name']'和move_uploaded_file ()從臨時文件夾移動到特定的文件夾

FirePHP是示出警告消息爲:和getimagesize()[function.getimagesize]:文件名不能在我的PHP文件空第19行

第19行包含getimagesize()語句。

有沒有人請讓我知道是否有可能使用AJAX技術上傳文件?或者其他更好的方法來做到這一點?

任何幫助,非常感謝。

回答

1

我會給你三種基本方式在基於AJAX的文件上傳工作..

1)僞造基於AJAX的文件上傳 - 你會在頁面上創建一個iframe(您可以用CSS隱藏),你可以將你的表單定位到POST到那個iframe。

<form target='upload_target' id="file_upload_form" method="post" enctype="multipart/form-data" action="upload.php"> 
    <input name="file" id="file" size="27" type="file" /><br /> 
    <input type="submit" name="action" value="Upload" /><br /> 
    <iframe id="upload_target" name="upload_target" src="" style="width:0;height:0;border:0px solid #fff;display: none;"></iframe> 
</form> 

2)文件API:如果你的瀏覽器支持的話,你可以使用複雜的文件API做什麼,我會打電話給一個純粹的AJAX文件上傳 - https://developer.mozilla.org/en/using_files_from_web_applications

3)您可以使用現有JQuery插件,如Ajax File UploadMultiple File Upload。請從JQuery網站查找更多的內容,評估跨瀏覽器的兼容性和使用情況。

相關問題