2010-12-17 11 views
0

これに道路ブロックを打つ。アップロードファイルをajaxを使用して

<input id="newFile" type="file"/> 
    <span style="background-color:orange;" onClick="newImage()">HEYTRY</span> 

これは非常に遠く、明らかではありません:私はこれまで持っているもの

私はこのイメージを変数に読み込み、変数をURL(ajax)で無制限に変換し、URLからビットを抽出できるようになったらphpで目標を達成する基本的な方法を探しています。

私は予期しないほど簡単ではありません。

助けがあれば助かります。

おかげ

答えて

1

のドキュメントを読むことができますこれはすべてのブラウザでうまくいくわけではありませんが、AJAX経由で複数のファイルをアップロードする素晴らしい方法です:

function upload_files(entityKey, files, url, progress_callback) { 
    var xhr = new XMLHttpRequest(), formData = new FormData(); 
    xhr.upload['onprogress'] = progress_callback; 

    formData.append('entityKey', entityKey); 
    $.each(files, function(i, file) { formData.append('file[]', file);}); 

    xhr.open("post", url, true); 
    xhr.setRequestHeader("Cache-Control", "no-cache"); 
    xhr.send(formData); 
} 

entityKeyは、サーバー上のパラメーターの例です。 'files'パラメータは、file-type入力フォーム要素の 'files'属性(multipleをサポートする配列)から来ます。 'progress_callback'パラメータは、(少なくとも) 'loaded'と 'total'フィールド(単位はバイト)を持つオブジェクトを取得する関数です。サーバーの応答は気にしません。

3

私はファイルをアップロードするために、このプラグインを使用。 http://www.uploadify.com/

それはまったく役に立ちますか?

+0

ありがとうございますが、私は実際にコード化して何が起こっているのか理解したいと思います。 –

+0

@jasonなぜホイールを再発明するのですか? –

0

私はこのプラグインを使用してファイルをアップロードします。

FORM PLUGIN

uがあなたの$ _FILESデータを渡し、後であなたのPHPコードを使用するには、このプラグインの方法を使用することができます。

$('.yourFormUpload').ajaxSubmit(options); 

オプション変数にuはそれ

関連する問題