Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] Upload pliku z paskiem postępu poprzez FTP, Problem z ftp_nb_fput
projektGraf
post 2.10.2009, 17:03:31
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 19.09.2009

Ostrzeżenie: (0%)
-----


Witam

Mam taki oto skrypt:
  1. <form action="test.php" method="post" enctype="multipart/form-data" target="uploadFile" style="margin: 0px; padding: 0px;">
  2.  
  3. <div style="padding: 0px; margin: 0px;"><div id="photo11"></div> %</div><br>
  4. <div id="photo12" style="border-bottom: 2px solid #000000; width: 1px;"></div><br>
  5. <input class="textInput" style="width: 470px;" name="uploadPicture1" type="file"><br><br>
  6.  
  7. <div style="padding: 0px; margin: 0px;"><div id="photo21"></div> %</div><br>
  8. <div id="photo22" style="border-bottom: 2px solid #000000; width: 1px;"></div><br>
  9. <input class="textInput" style="width: 470px;" name="uploadPicture2" type="file"><br><br>
  10.  
  11. <div style="padding: 0px; margin: 0px;"><div id="photo31"></div> %</div><br>
  12. <div id="photo32" style="border-bottom: 2px solid #000000; width: 1px;"></div><br>
  13. <input class="textInput" style="width: 470px;" name="uploadPicture3" type="file"><br><br>
  14.  
  15. <div style="padding: 0px; margin: 0px;"><div id="photo41"></div> %</div><br>
  16. <div id="photo42" style="border-bottom: 2px solid #000000; width: 1px;"></div><br>
  17. <input class="textInput" style="width: 470px;" name="uploadPicture4" type="file"><br><br>
  18.  
  19. <div style="padding: 0px; margin: 0px;"><div id="photo51"></div> %</div><br>
  20. <div id="photo52" style="border-bottom: 2px solid #000000; width: 1px;"></div><br>
  21. <input class="textInput" style="width: 470px;" name="uploadPicture5" type="file"><br><br>
  22.  
  23.  
  24. <input class="buttonInput" name="uploadPictureAdd" value="Dodaj zdjęcie" type="submit">
  25. </form>
  26.  
  27.  
  28. <IFRAME src="test.php" name="uploadFile" width="600" height="600" frameborder="1">
  29. {L_ERROR}
  30. </IFRAME>


Plik z iframe:
  1. <?php ob_end_flush();
  2.  
  3.  
  4.  
  5. if(@$_POST['uploadPictureAdd'] == true){
  6. print 'dddddd';
  7. for($picture2=1; $picture2 <= 5; $picture2++){
  8.  
  9. $remote_file = "public_html/".$_FILES['uploadPicture'.$picture2]['name'];
  10. $local_file = $_FILES['uploadPicture'.$picture2]["tmp_name"];
  11. $ftp_server = 'ftp.*******';
  12. $ftp_user_name = '******';
  13. $ftp_user_pass = '******';
  14.  
  15. $fp = fopen($local_file, 'r');
  16. $conn_id = ftp_connect($ftp_server);
  17. $login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
  18. $ret = ftp_nb_fput($conn_id, $remote_file, $fp, FTP_BINARY);
  19. while ($ret == FTP_MOREDATA) {
  20. // Establish a new connection to FTP server
  21. if(!isset($conn_id2)) {
  22. $conn_id2 = ftp_connect($ftp_server);
  23. $login_result2 = ftp_login($conn_id2, $ftp_user_name, $ftp_user_pass);
  24. }
  25.  
  26. // Retreive size of uploaded file.
  27. if(isset($conn_id2)) {
  28. clearstatcache(); // <- this must be included!!
  29. $remote_file_size = ftp_size($conn_id2, $remote_file);
  30. }
  31.  
  32. // Calculate upload progress
  33. $local_file_size = filesize($local_file);
  34. if (isset($remote_file_size) && $remote_file_size > 0 ){
  35.  
  36. $i1 = number_format(($remote_file_size/$local_file_size)*100, 2, ".", "");
  37. $i2 = number_format(($remote_file_size/$local_file_size)*100, 0, ".", "");
  38.  
  39. print "<script type=\"text/javascript\" language=\"JavaScript\">
  40. <!--
  41. parent.document.getElementById('photo".$picture2."1').innerHTML='".$i1."';
  42. parent.document.getElementById('photo".$picture2."2').style.width='".$i2."';
  43. //-->
  44. </script>";
  45.  
  46. flush();
  47. }
  48. $ret = ftp_nb_continue($conn_id);
  49. }
  50.  
  51. if ($ret != FTP_FINISHED) {
  52.  
  53. print "<script type=\"text/javascript\" language=\"JavaScript\">
  54. <!--
  55. parent.document.getElementById('photo".$picture2."1').innerHTML='There was an error uploading the file...<br>';
  56. //-->
  57. </script>";
  58. exit(1);
  59. }
  60. else {
  61. print "<script type=\"text/javascript\" language=\"JavaScript\">
  62. <!--
  63. parent.document.getElementById('photo".$picture2."1').innerHTML='koniec<br>';
  64. //-->
  65. </script>";
  66. }
  67. fclose($fp);
  68. }
  69. }
  70. ?>


Jak uploaduje fotki z localhost na serwer pokazuje mi pasek postępu i procent uploadu.
Jak uruchomię ten sam skrypt z serwera nie pokazuje się procent ani pasek postępu.
Jaka kolwiek informacja pokazuje się dopiero po zakończeniu całego uploadu.
Wie ktoś może gdzie jest problem?questionmark.gif?

Pozdrawiam

Ten post edytował projektGraf 3.10.2009, 00:54:19
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 13:00