2010-12-17 6 views
0

schlagen eine Straßensperre auf diese.Upload-Datei mit Ajax

, was ich bisher habe:

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

Dies ist offensichtlich nicht sehr weit.

Ich bin auf der Suche nach einer grundlegenden Möglichkeit, dieses Bild in eine Variable zu laden, die Variable in eine passierbare URL über eine URL (AJAX) zu konvertieren und dann mein Ziel über PHP zu erreichen, sobald es die Bits aus der URL extrahieren kann.

nicht so einfach wie ich es erwartet hatte.

jede Hilfe wäre toll.

dank

Antwort

1

Dies funktioniert nicht bei jedem Browser, aber es ist eine gute Möglichkeit, mehrere Dateien über AJAX hochzuladen:

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); 
} 

Der entityKey ist ein Beispiel für einen Parameter auf dem Server. Der Parameter 'files' stammt vom Attribut 'files' des Eingabeformularelements vom Typ datei (als ein Array, das mehrere unterstützt). Der Parameter 'progress_callback' ist eine Funktion, die ein Objekt mit (mindestens) 'geladenem' und 'totalem' Feld (Einheit ist Bytes) übernimmt. Es kümmert sich nicht um die Serverantwort.

3

Ich benutze dieses Plugin für das Hochladen von Dateien. http://www.uploadify.com/

Hilft das überhaupt?

+0

danke, aber ich würde es wirklich gerne codieren und verstehen, was los ist –

+0

@jason warum das Rad neu erfinden? –

0

Ich verwende dieses Plug-in, um eine Datei hochzuladen.

FORM PLUGIN

u dieses Plug-in-Methode verwenden, können Sie Ihre $ _FILES Daten zu übergeben und Ihre PHP-Code zu verwenden, später:

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

für Optionen Variable u Dokumentation lesen kann