コピー中のファイルの進行状況を取得しようとしています
最初に、以下のコードを使用してファイルをコピーするリクエストを送信します。ファイルが作成されたら。私は応答 success=1 を送信し、コピー プロセスを開始し、getProgressも呼び出します
$.ajax({
url:'copyFile.php',
type: 'post',
dataType: 'json',
data: {'data':someData},
success: function(data) {
if(data.success){
progressIndex=setInterval(getProgress, 1000 );
}
},
error:function(err){
console.log(err);
}
});
function getProgress(){
$.ajax({
url:'FileUploadProgress.php',
type: 'post',
dataType: 'json',
data: {'progress':'1'},
success: function(data) {
if(!data.success){
clearTimeout(progressIndex);
}
},
error:function(err){
console.log(err);
}
});
}
FileUploadProgress.php
class FileUploadProgress{
private $filename;
private $progress;
public function setfileProgress($filename,$progress){
$this->filename=$filename;
$this->progress=$progress;
}
function returnProgress(){
if(empty($this->filename) || empty($this->progress)){
echo json_encode(array('success'=>'0'));
}else{
echo json_encode(array('success'=>1,'filename'=>$this->filename,'progress'=>$this-
>progress));
}
}
}
$fileuploadprogress=new FileUploadProgress;
if($_POST['progress']){
$fileuploadprogress->returnProgress();
}
コピー中に進行状況を取得し、関数setfileProgressを呼び出して進行 状況を設定します。また、クライアント側で進行状況を要求しましたが、取得しているのは success=0 であり、$this->progress は空です コードに何か不足しています。私にお知らせください