Meistens werden Plug-Ins zum Hochladen von Dateien auf den PC verwendet, und es spielt keine Rolle, ob Flash eingeführt wird. Wenn jedoch auf dem mobilen Endgerät weiterhin verschiedene redundante Plug-Ins verwendet werden, werden Sie wahrscheinlich zu Tode kritisiert. Das Projekt muss über die Funktion zum Hochladen von Bildern verfügen. Da H5 bereits über entsprechende Schnittstellen und eine gute Kompatibilität verfügt, wird H5 bei der Implementierung natürlich Vorrang eingeräumt. Die wichtigsten verwendeten Technologien sind: Ajax Dateileser Formulardaten HTML-Struktur: XML/HTML-CodeInhalt in die Zwischenablage kopieren - < div Klasse = "Kamerabereich" >
- < Formular enctype = "multipart/Formulardaten" Methode = "posten" >
- < Eingabe Typ = "Datei" Name = "Hochzuladende Datei" Klasse = "Hochzuladende Datei" akzeptieren = "Bild/*" Aufnahme = "Kamera" />
- < div Klasse = "Upload-Fortschritt" > < span > </ span > </ div >
- </ form >
- < div Klasse = "Daumen" > </ div >
- </div>
-
Das gepackte upload.js hängt von zepto ab JavaScript CodeInhalt in die Zwischenablage kopieren - ( Funktion ($) {
- $.extend($.fn, {
- Dateiupload: Funktion (Optionen) {
- diese .each( Funktion () {
- var $self = $( dies );
- var doms = {
- "Hochzuladende Datei" : $self.find( ".Hochzuladende Datei" ),
- "Daumen" : $self.find( ".daumen" ),
- "Fortschritt" : $self.find( ".upload-progress" )
- };
- var funs = {
-
- "DateiAusgewählt" : Funktion () {
- var Dateien = (doms.fileToUpload)[0].files;
- var Anzahl = Dateien.Länge;
- für ( var index = 0; index < Anzahl; index++) {
- var Datei = Dateien[Index];
- var Dateigröße = 0;
- wenn (Dateigröße > 1024 * 1024)
- Dateigröße = (Math.round(Dateigröße * 100 / (1024 * 1024)) / 100).toString() + 'MB' ;
- anders
- Dateigröße = (Math.round(Dateigröße * 100 / 1024) / 100).toString() + 'KB' ;
- }
- funs.uploadFile();
- },
-
- Datei hochladen: Funktion () {
- var fd = new FormData();
- var Dateien = (doms.fileToUpload)[0].files;
- var Anzahl = Dateien.Länge;
- für ( var index = 0; index < Anzahl; index++) {
- var Datei = Dateien[Index];
- fd.append(opts.file, file);
- funs.previewImage(file);
- }
- var xhr = neue XMLHttpRequest();
- xhr.upload.addEventListener( "progress" , funs.uploadProgress, false );
- xhr.addEventListener( "laden" , funs.uploadComplete, false );
- xhr.addEventListener( "Fehler" , opts.uploadFailed, false );
- xhr.open( "POST" , opts.url);
- xhr.send(fd);
- },
-
- previewImage: Funktion (Datei) {
- var Galerie = doms.thumb;
- var img = document.createElement( "img" );
- img.file = Datei;
- doms.thumb.html(Bild);
-
- var reader = neuer FileReader();
- reader.onload = ( Funktion (aImg) {
- zurückkehren Funktion (e) {
- aImg.src = e.Ziel.Ergebnis;
- };
- })(Bild);
- reader.readAsDataURL(Datei);
- },
- uploadProgress: Funktion (evt) {
- wenn (evt.LängeBerechenbar) {
- var ProzentAbgeschlossen = Math.round(evt.geladen * 100 / evt.gesamt);
- doms.progress.html(percentComplete.toString() + '%' );
- }
- },
- "uploadComplete" : Funktion (evt) {
- Alarm (evt.target.responseText)
- }
- };
- doms.fileToUpload.on( "ändern" , Funktion () {
- doms.progress.find( "Spanne" ).Breite( "0" );
- funs.fileSelected();
- });
- });
- }
- });
- })(Zepto);
Aufrufmethode: JavaScript CodeInhalt in die Zwischenablage kopieren - $( ".camera-area" ).fileUpload({
- "URL" : "Datei speichern.php" ,
- "Datei" : "meineDatei"
- });
PHP-Teil:
PHP CodeInhalt in die Zwischenablage kopieren - <?php
- wenn (isset( $_FILES [ 'meineDatei' ])) {
-
- schreibeLog( $_FILES );
- move_uploaded_file( $_FILES [ 'meineDatei' ][ 'tmp_name' ], "uploads/" . $_FILES [ 'meineDatei' ][ 'name' ]);
- Echo 'erfolgreich' ;
- }
- Funktion writeLog( $log ){
- wenn ( ist_Array ( $log ) || ist_Objekt ( $log )){
- $log = json_encode( $log );
- }
- $log = $log . "\r\n" ;
-
- file_put_contents ( 'log.log' , $log , FILE_APPEND);
- }
- ?>
Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Originaltext: http://www.cnblogs.com/hutuzhu/p/5254532.html |