進度條我試圖做一個進度條與$阿賈克斯(jQuery的)和PHP工程文件上傳,但我不知道如何組裝。我知道有一個使用jQuery UI的進度條;如何,它只是在接收價值時改變。這就是要點。我怎樣才能獲得字節數量的動態值?
順便說一句,這是我的代碼:
fx_file.js
/*This function gets Data from the form and send it to server*/
function fiEnviarDatos2(){
$("form#data").click(function(){
/*Some DOM'S animations*/
});
$("form#data").submit(function(){
var formData = new FormData($(this)[0]);
$.ajax({
url: "PHP/Core/Archivos/upload.php",
type: 'POST',
data: formData,
async: false,
success: function (data) {
/*After actions**/
},
progress:function(data){
alert(data);
},
cache: false,
contentType: false,
processData: false
});
return false;
});`
upload.php的
<?php include ("Class_upload.php");
/*Variables*/
$i=0;
$archivos=0;
/*Contains numbers of file sent*/
$archivos=((count($_FILES,1)-6)/5);
/*Contains the user's session name*/
session_start();
$sUsuario=$_SESSION['usuario'];
/*Use the information of each file to create a new class Upload*/
for($i=0;$i<$archivos;$i++){
/*FileSize*/
$tamaArchivo = $_FILES['formUploader']['size'][$i];
/*Filename*/
$nombArchivo = strtolower($_FILES['formUploader']['name'][$i]);
/*Filetemp*/
$tmpArchivo = $_FILES['formUploader']['tmp_name'][$i];
/*It creates class Upload*/
$archivo_subir=new Upload($nombArchivo,$tamaArchivo,$tmpArchivo,$sUsuario);
/*It validates each file and returns a status*/
$estatus=$archivo_subir->enviarData();
/*Returns if file's been uploaded or not*/
$resultFile=$archivo_subir->resultFile($estatus);
echo "<br>";
if($estatus>0){
echo "<div class='resultDeny'>".$resultFile."</div>";
}else{
if($resultFile=="ServerError"){
echo "<div class='resultServer'>".$resultFile."</div>";
}else{
echo "<div class='resultSuccess'>".$resultFile."</div>";
}
}
}
我希望我能找到一些你的幫助,夥計們。我知道你們都是專家。我是新的與jQuery和PHP的工作;然而,我已經看到「他們的力量在一起」,我想了解更多關於他們。
謝謝大家。
PDT:對不起,我的英語,這不是我的母語。 JQ & PHP會。
你使用支持上傳進度的選項?無論是5.4或APC? – datasage
我不知道如何使用jQuerry實現這一點,但上傳狀態的回調是'HTTPRequest.upload。onprogress'。回調函數獲取'event'作爲第一個參數,並且百分比進度以這種方式獲得:'event.loaded * 100/event.total'。 –
嘿,謝謝你的回答。那麼,我使用PHP 5.4,它影響什麼? – Leo