2012-01-12 7 views
0

私はphpでファイルをアップロードしようとしています。通常のプロセスは次のとおりです。通常のフォームポストメソッドを使わずにphpとajaxでファイルをアップロード

form->buttononclickとイベント

私は渡しているJavaScriptからのAjax/JavaScriptのfunction->ph Pスクリプトの呼び出しを呼び出します。私は、このメソッドを使用していPOST->php

しかし

フォームjavascriptへの完全なフォーム(this.form)、javascriptでいくつかのものを行い、すべてのフォーム入力をGET (xxx.php?xxx=xxx&yyy=yyy....)を使用してPHPに1つずつ送信すると、それらの入力の1つがFILEであり、PHPに送信する方法がわかりませんスクリプトトラフのjavascript関数。あなたがGETしてファイルを送信することはできませんすべての

答えて

0

まず、ちょうどPOSTを使用して、事前に

おかげで、第二あなたは< IE 8のためのフラッシュアップローダーを必要とし、他のブラウザのためにあなたはインラインフレームを必要としています。私が知っている他の解決策はありません。

0

JSを使用してファイルをアップロードするには、HTML 5 File APIを使用できます(hereは素敵なチュートリアルです)。ただし、サーバーのURIの長さの制限が最大限にあるため、慎重にする必要があります(詳細はthisを参照)。