2012-08-26 11 views
11

私はファイルアップロードに進捗率を追加する方法の基本を示すチュートリアルを見つけようとしています。私はすでにファイルアップロード部分を構築していますので、両方とも付属していますが、自分でプログレスバーをコーディングすることができますが、これを行う方法についてはいくつかの助けが必要です。私はそれがどのように動作するかを知りたがっています。シンプルなjQueryプログレスバーのパーセント

ご協力いただきありがとうございます、ありがとうございます!

私はちょうど進捗バー自体ではなく、ファイルのアップロードの割合を取得する方法に興味があります。私は正確なパーセンテージを持ちたいと思っています。

答えて

14

はここを見て:

http://jquery.malsup.com/form/progress.html

はこれを試してください: -

が、これは私のhtmlコード

<!doctype html> 
<head> 
<title>File Upload Progress Demo #1</title> 
<style> 
body { padding: 30px } 
form { display: block; margin: 20px auto; background: #eee; border-radius: 10px; padding: 15px } 

.progress { position:relative; width:400px; border: 1px solid #ddd; padding: 1px; border-radius: 3px; } 
.bar { background-color: #B4F5B4; width:0%; height:20px; border-radius: 3px; } 
.percent { position:absolute; display:inline-block; top:3px; left:48%; } 
</style> 
</head> 
<body> 
    <h1>File Upload Progress Demo #1</h1> 
    <code>&lt;input type="file" name="myfile"></code> 
     <form action="upload.php" method="post" enctype="multipart/form-data"> 
     <input type="file" name="uploadedfile"><br> 
     <input type="submit" value="Upload File to Server"> 
    </form> 

    <div class="progress"> 
     <div class="bar"></div > 
     <div class="percent">0%</div > 
    </div> 

    <div id="status"></div> 

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7/jquery.js"></script> 
<script src="http://malsup.github.com/jquery.form.js"></script> 
<script> 
(function() { 

var bar = $('.bar'); 
var percent = $('.percent'); 
var status = $('#status'); 

$('form').ajaxForm({ 
    beforeSend: function() { 
     status.empty(); 
     var percentVal = '0%'; 
     bar.width(percentVal) 
     percent.html(percentVal); 
    }, 
    uploadProgress: function(event, position, total, percentComplete) { 
     var percentVal = percentComplete + '%'; 
     bar.width(percentVal) 
     percent.html(percentVal); 
    }, 
    complete: function(xhr) { 
    bar.width("100%"); 
    percent.html("100%"); 
     status.html(xhr.responseText); 
    } 
}); 

})();  
</script> 

</body> 
</html> 

私のPHPコードである

<?php 
$target_path = "uploads/"; 

$target_path = $target_path . basename($_FILES['uploadedfile']['name']); 

if(move_uploaded_file($_FILES['uploadedfile']['tmp_name'], $target_path)) { 
    echo "The file ". basename($_FILES['uploadedfile']['name']). 
    " has been uploaded"; 
} else{ 
    echo "There was an error uploading the file, please try again!"; 
} 
?> 
+0

これはテストされたコードです。 %進捗バーでファイルをアップロードします。それを試してみてください。 –

+0

SAVIOR。この答えは、3日間の連続闘争の後で私を助けました。ありがとうbhaijaan Abid。 – trollster

+0

@IliaRostovtsev、リンクコードだけでなく、一時的または永続的にリンクが利用できなくなった場合でも、このサイトでコードを閲覧して使用できるようになっているかどうかが、投稿コードとリンクの全体的なポイントです。答えとしてリンクを投稿するだけでなく、常にコードを提供してください。 – TheCarver

3

ご覧ください、私はあなたがこの1つが役に立つと思います。それはjQueryで、あなたのアップロードスクリプトが欲しいのと同じように進歩率があります!

Live Demo jsFiddle

あなたがより複雑な例を学びたいのであれば、Uber Uploaderと呼ばれ、私が推薦する信頼性の高いスクリプト、
がある - それはjQueryとPHPです。

関連する問題