Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Session progress z PHP 5.4
Forum PHP.pl > Forum > PHP
kicaj
Mam w sumie bardzo krótki kod na temat nowości jaka pojawiła się już jakiś czas temu w PHP w wersji 5.4 - Session upload progress

Niestety, jednak nie wiem jak zabrać się aby skorzystać z tej nowości, PHP mam dokładnie w wersji 5.4.18 przy włączonych domyślnych ustawieniach session.upload_progress.*

Poniżej prezentuje kod (całość w jednym pliku):
  1. <?php
  2.  
  3.  
  4. if(isset($_GET['progress'])) {
  5. $key = ini_get("session.upload_progress.prefix") . 'demo';
  6.  
  7. if(isset($_SESSION[$key])) { // Jakby nie tworzyl klucza sesji
  8. $session_progress = $_SESSION[$key];
  9. $progress = round(($session_progress['bytes_processed'] / $session_progress['content_length']) * 100, 2);
  10.  
  11. echo $progress .'%';
  12. } else {
  13. echo 'blad / zaladowano...';
  14. }
  15. }
  16.  
  17. ?>
  18. <!doctype html>
  19. <head>
  20. </head>
  21. <body>
  22. <section>
  23. <form action="" method="POST" enctype="multipart/form-data" target="upload-frame">
  24. <input type="hidden" name="<?php echo ini_get("session.upload_progress.name"); ?>" value="demo">
  25. <p>
  26. <label>Plik:</label>
  27. <input type="file" name="file" required="required">
  28. </p>
  29. <p><input type="submit" name="submit"></p>
  30. </form>
  31. <iframe id="upload-frame" name="upload-frame" width="500" height="400"></iframe>
  32. <div id="file_upload_progress"></div>
  33. </section>
  34. <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  35. <script>
  36. $(document).ready(function() {
  37. var uploading = false;
  38.  
  39. $('form').submit(function() {
  40.  
  41. uploading = true;
  42. $('#upload-frame').one('load', function(){
  43. uploading = false;
  44. });
  45.  
  46. function update_file_upload_progress() {
  47. $.get("?progress", function(data) {
  48. $("#file_upload_progress").html(data);
  49.  
  50. if(uploading) {
  51. setTimeout(update_file_upload_progress, 500);
  52. }
  53. })
  54. .error(function(jqXHR, error) {
  55. alert(error);
  56. });
  57. }
  58.  
  59. update_file_upload_progress();
  60. });
  61. });
  62. </script>
  63. </body>
  64. </html>

Osoby, które miały już styczność z 'session upload progress' proszę o pomoc lub nakierowanie na rozwiązanie:)
Interesuje mnie najprostsze rozwiązanie (wyświetlanie wartości procentowych ładowania), bez zbędnych dodatków, APC, itd.

Z góry dzięki!
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.