


PHP und AjaxForm implementieren den asynchronen Datei-Upload mit Fortschrittsbalken
Dieser Artikel konzentriert sich auf die Einführung eines Beispielcodes für das Hochladen von PHP + AjaxForm mit Fortschrittsbalken. Bevor Sie die ajaxForm-Methode verwenden, müssen Sie zunächst das Plug-in „form.js“ installieren Schauen Sie mal rein. Ich hoffe, es kann allen helfen.
Bevor Sie die ajaxForm-Methode verwenden, müssen Sie zunächst das online verfügbare form.js-Plugin installieren.
1 Dieser Parameter kann eine Variable, ein Objekt oder eine Callback-Funktion sein. Dieses Objekt hat hauptsächlich die folgenden Parameter:
var object= { url:url, //form提交数据的地址 type:type, //form提交的方式(method:post/get) target:target, //服务器返回的响应数据显示的元素(Id)号 beforeSerialize:function(){} //序列化提交数据之前的回调函数 beforeSubmit:function(){}, //提交前执行的回调函数 success:function(){}, //提交成功后执行的回调函数 error:function(){}, //提交失败执行的函数 dataType:null, //服务器返回数据类型 clearForm:true, //提交成功后是否清空表单中的字段值 restForm:true, //提交成功后是否重置表单中的字段值,即恢复到页面加载时的状态 timeout:6000 //设置请求时间,超过该时间后,自动退出请求,单位(毫秒)。 } ajaxForm js的code $(function(){ $("form").ajaxForm(object); })
Instanzspezifischer Code Code
htmlcode
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="X-UA-Compatible" content="IE=7" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="ROBOTS" content="NOODP"> <title>PHP+Ajax异步带进度条上传文件实例_php</title> <meta http-equiv="X-UA-Compatible" content="IE=EDGE" /> <meta name="keywords" content="php,ajax异步上传文件,ajax,异步加载,进度条,php,ajax上传进度条" /> <meta name="description" content="这篇文章主要介绍了PHP+Ajax异步带进度条上传文件实例代码。" /> <!--默认的进度条样式文件 添加一个带有 class .progress 的 <p>。 接着,在上面的 <p> 内,添加一个带有 class .progress-bar 的空的 <p>。 添加一个带有百分比表示的宽度的 style 属性,例如 style="60%"; 表示进度条在 60% 的位置 --> <link rel="stylesheet" href="public/css/bootstrap.min.css" rel="external nofollow" > <script src="public/js/jquery.min.js"></script> <script src="public/js/jquery.form.js"></script> <!--ajaxForm 提交form表单数据无刷新处理数据--> </head> <body> <p class="uk-container uk-container-center"> <p class="pk-system-messages"></p> <h1 class="uk-h2 uk-text-center" style="margin-top:-100px;">文件上传</h1> <p class="pk-system-messages"></p> <p class="container-main"> <h1>文件上传</h1> <p>这里只是一个ajax+php+ajaxForm上传文件word文档例子</p> <form id='myupload' action='upload.php' method='post' enctype='multipart/form-data'> <label for="file">选择上传文件名:</label> <input type="file" name="mypic" id="file"><br> <input type="submit" name="upload" class="btn btn-success" value="upload"> <input type='text' name="list" value="555"/> </form> <p class="progress"> <p class="progress-bar progress-bar-success progress-bar-striped" role="progressbar" aria-valuenow="45" aria-valuemin="0" aria-valuemax="100" style="width: 0%;color:red;"> <span class="sr-only">10% Complete</span> </p> </p> <p class="files"></p> <p class="showimg"></p> </p> </p> </body> <script type="text/javascript"> $(function () { $("#myupload").ajaxForm({ dataType:'json', beforeSend:function(){ $(".progress").show(); }, uploadProgress:function(event,position,total,percentComplete){ var percentVal = percentComplete + '%'; $(".progress-bar").width(percentComplete + '%'); $(".progress-bar").html(percentVal); $(".sr-only").html(percentComplete + '%'); }, success:function(data){ $(".progress").hide(); if(data.error == "empty_name"){ alert("文件上传非法,上传失败!"); exit(); }; if(data.error == "large"){ alert("图片上传不能大于2M,上传失败!"); exit(); }; if(data.error == "format"){ alert("图片格式错误,上传失败"); exit(); }; //$(".files").html("<b>"+data.name+"("+data.size+"k)</b> <span class='delimg' rel='"+data.pic+"'>删除</span>"); $(".files").html("文件名: "+data.name+"<span class='delimg' rel='"+data.pic+"'> del </span>大小:"+data.size); var img = "files/"+data.pic; $(".showimg").html("<img src='"+img+"'>"); alert("上传成功!"); }, error:function(){ alert("上传失败"); } }); $(".progress").hide(); }); </script> </html>
PHP-Upload Klasse hochladen upload.class.php-Datei
<?php date_default_timezone_set("PRC"); //设置时间区域 //上传类 class upload{ protected $file_path = "files"; //当前files存储文件夹 protected $file_size = 5120000; //5M 用户上传 /** *检测文件是否为空 */ public function check_file($get_file) { if (empty($get_file)) { $type = "check_file"; $arr = array('error'=>'empty_name','type'=>$type); echo json_encode($arr); exit(); } return true; } /** *检测文件类型 */ public function check_type($get_type) { if (( $get_type == ".docx" ) || ( $get_type == ".doc" )) { //这里只是判断上传word文档可以自己添加 }else{ $type = "check_type"; $arr = array('error'=>'format','type'=>$type); echo json_encode($arr); exit(); } return true; } /** *检测文件大小 */ public function check_size($get_file) { if ( $get_file != "" ) { if ( $get_file > $this->file_size ) { $arr = array('error'=>'large'); echo json_encode($arr); exit(); } }else{ return false; exit(); } return true; } /** *文件保存 */ public function save_file($file_type,$file_tmp_name) { $rand = rand(1000, 9999); $pics =date('YmdHis') . $rand . $file_type; $path = $this->file_path."/".$pics; $result = move_uploaded_file($file_tmp_name, $path); if($result){ return $pics; }else{ return false; exit(); } } } ?>
Ajax-PHP-Verarbeitungsdatei-Upload senden
<?php include("upload.class.php"); $up_obj = new upload(); //获取上传文件名 $get_fileName = $_FILES['mypic']['name']; $get_fileSize = $_FILES['mypic']['size']; $get_TmpFiles = $_FILES['mypic']['tmp_name']; $get_fileType = strstr($get_fileName, '.'); $check_result = $up_obj->check_file($get_fileName); if($check_result){ $result_type = $up_obj->check_type($get_fileType);//检查文件类型 if($result_type){ $result_size = $up_obj->check_size($get_fileSize);//检查文件大小 if($result_size){ $pics = $up_obj->save_file($get_fileType,$get_TmpFiles); //文件上传保存 $size = round($get_fileSize/1024,2); $arr = array( 'name' => $get_fileName, 'pic' => $pics, 'size'=> $size, 'error' => 2, 'list' =>$_POST['list'] ); if($pics){ //检查文件上传状态 echo json_encode($arr); } } } } ?>
Verwandte Empfehlungen:
PHP AjaxForm Bild-Upload senden und Bildquellcode_php-Beispiel anzeigen
Das obige ist der detaillierte Inhalt vonPHP und AjaxForm implementieren den asynchronen Datei-Upload mit Fortschrittsbalken. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



PHP 8.4 bringt mehrere neue Funktionen, Sicherheitsverbesserungen und Leistungsverbesserungen mit einer beträchtlichen Menge an veralteten und entfernten Funktionen. In dieser Anleitung wird erklärt, wie Sie PHP 8.4 installieren oder auf PHP 8.4 auf Ubuntu, Debian oder deren Derivaten aktualisieren. Obwohl es möglich ist, PHP aus dem Quellcode zu kompilieren, ist die Installation aus einem APT-Repository wie unten erläutert oft schneller und sicherer, da diese Repositorys in Zukunft die neuesten Fehlerbehebungen und Sicherheitsupdates bereitstellen.

Visual Studio Code, auch bekannt als VS Code, ist ein kostenloser Quellcode-Editor – oder eine integrierte Entwicklungsumgebung (IDE) –, die für alle gängigen Betriebssysteme verfügbar ist. Mit einer großen Sammlung von Erweiterungen für viele Programmiersprachen kann VS Code c

Wenn Sie ein erfahrener PHP-Entwickler sind, haben Sie möglicherweise das Gefühl, dass Sie dort waren und dies bereits getan haben. Sie haben eine beträchtliche Anzahl von Anwendungen entwickelt, Millionen von Codezeilen debuggt und eine Reihe von Skripten optimiert, um op zu erreichen

Dieses Tutorial zeigt, wie XML -Dokumente mit PHP effizient verarbeitet werden. XML (Extensible Markup-Sprache) ist eine vielseitige textbasierte Markup-Sprache, die sowohl für die Lesbarkeit des Menschen als auch für die Analyse von Maschinen entwickelt wurde. Es wird üblicherweise für die Datenspeicherung ein verwendet und wird häufig verwendet

JWT ist ein offener Standard, der auf JSON basiert und zur sicheren Übertragung von Informationen zwischen Parteien verwendet wird, hauptsächlich für die Identitätsauthentifizierung und den Informationsaustausch. 1. JWT besteht aus drei Teilen: Header, Nutzlast und Signatur. 2. Das Arbeitsprinzip von JWT enthält drei Schritte: Generierung von JWT, Überprüfung von JWT und Parsingnayload. 3. Bei Verwendung von JWT zur Authentifizierung in PHP kann JWT generiert und überprüft werden, und die Funktionen und Berechtigungsinformationen der Benutzer können in die erweiterte Verwendung aufgenommen werden. 4. Häufige Fehler sind Signaturüberprüfungsfehler, Token -Ablauf und übergroße Nutzlast. Zu Debugging -Fähigkeiten gehört die Verwendung von Debugging -Tools und Protokollierung. 5. Leistungsoptimierung und Best Practices umfassen die Verwendung geeigneter Signaturalgorithmen, das Einstellen von Gültigkeitsperioden angemessen.

Eine Zeichenfolge ist eine Folge von Zeichen, einschließlich Buchstaben, Zahlen und Symbolen. In diesem Tutorial wird lernen, wie Sie die Anzahl der Vokale in einer bestimmten Zeichenfolge in PHP unter Verwendung verschiedener Methoden berechnen. Die Vokale auf Englisch sind a, e, i, o, u und sie können Großbuchstaben oder Kleinbuchstaben sein. Was ist ein Vokal? Vokale sind alphabetische Zeichen, die eine spezifische Aussprache darstellen. Es gibt fünf Vokale in Englisch, einschließlich Großbuchstaben und Kleinbuchstaben: a, e, ich, o, u Beispiel 1 Eingabe: String = "TutorialPoint" Ausgabe: 6 erklären Die Vokale in der String "TutorialPoint" sind u, o, i, a, o, ich. Insgesamt gibt es 6 Yuan

Statische Bindung (statisch: :) implementiert die späte statische Bindung (LSB) in PHP, sodass das Aufrufen von Klassen in statischen Kontexten anstatt Klassen zu definieren. 1) Der Analyseprozess wird zur Laufzeit durchgeführt.

Was sind die magischen Methoden von PHP? Zu den magischen Methoden von PHP gehören: 1. \ _ \ _ Konstrukt, verwendet, um Objekte zu initialisieren; 2. \ _ \ _ Destruct, verwendet zur Reinigung von Ressourcen; 3. \ _ \ _ Call, behandeln Sie nicht existierende Methodenaufrufe; 4. \ _ \ _ GET, Implementieren Sie den dynamischen Attributzugriff; 5. \ _ \ _ Setzen Sie dynamische Attributeinstellungen. Diese Methoden werden in bestimmten Situationen automatisch aufgerufen, wodurch die Code -Flexibilität und -Effizienz verbessert werden.
