barre de téléchargement

barre de téléchargement - PHP - Programmation

Marsh Posté le 28-07-2004 à 12:10:39    

je pense pas qu'on puisse faire ça avec du PHP... Mais savez vous ou je peux trouver un script pour avoir une barre d'avancement de téléchargement (quelque soit le langage).. j'ai cherché un post sur le sujet mais j'ai pas trouvé  
Merci !  :jap:

Reply

Marsh Posté le 28-07-2004 à 12:10:39   

Reply

Marsh Posté le 28-07-2004 à 12:16:13    

benh c'est pas possible de faire ça. Ou alors faut faire un refresh (et encore...). php -> server-side [:spamafote]

Reply

Marsh Posté le 28-07-2004 à 12:16:51    

freed102 a écrit :

je pense pas qu'on puisse faire ça avec du PHP... Mais savez vous ou je peux trouver un script pour avoir une barre d'avancement de téléchargement (quelque soit le langage).. j'ai cherché un post sur le sujet mais j'ai pas trouvé  
Merci !  :jap:


 

Code :
  1. <script language = 'javascript'>
  2. function Loadvis(){
  3.   dom=document.getElementById("load" ).style;
  4.   dom.visibility = "hidden";
  5. }
  6. </script>
  7. <?php
  8. //code  
  9. echo"<div id='load' style = 'visibility:visible'<img name='loading'src='loading.gif'</div>";
  10. //code  
  11. echo"<script>Loadvis()</script>";
  12. ?>


 
Cela me conviendrait-il ?  :sarcastic:  :??:

Reply

Marsh Posté le 28-07-2004 à 12:18:30    

RiderCrazy a écrit :

benh c'est pas possible de faire ça. Ou alors faut faire un refresh (et encore...). php -> server-side [:spamafote]


Bah on voit bien parfois cette fonction sur certains sites (Yahoo Mail par exemple pour les fichiers attachés)... c quoi à votre avis ?

Reply

Marsh Posté le 28-07-2004 à 12:18:52    

[:rofl]
interêt du php là ?

Reply

Marsh Posté le 28-07-2004 à 12:20:59    

pour quelle raison veux tu montrer une barre de (télé) chargement?
 
Et dans Yahoo Mail ca serait pas la barre de chargement de la fenêtre ou un truc du style, plus qu'une barre dynamique au milieu de la page? (genre utilisation du send http)

Reply

Marsh Posté le 28-07-2004 à 12:22:03    

souvent il s'agit juste d'un gif qui defile
les "vrais" barre de progression sont impossible en php

Reply

Marsh Posté le 28-07-2004 à 12:23:59    

Masklinn a écrit :

pour quelle raison veux tu montrer une barre de (télé) chargement?
 
Et dans Yahoo Mail ca serait pas la barre de chargement de la fenêtre ou un truc du style, plus qu'une barre dynamique au milieu de la page? (genre utilisation du send http)


 
Bah en fait je vais faire un systeme d'upload de gros fichiers (genre video/son etc etc) alors va falloir faire patienter les utilisateurs pour pas qu'ils croient que le site est planté !

Reply

Marsh Posté le 28-07-2004 à 12:24:41    

et ça... ça ferait quoi ?
 

Code :
  1. /*
  2. Insérer ce code entre les balises <Body> </Body>
  3. */
  4. <script language="JavaScript">
  5. var largeur = screen.width;
  6. var haut = ((screen.height/2)+80)/30;
  7. document.write('<div id="hidepage" style="position: absolute; left:0px; top:0px; background-color: '+ couleur +'; layer-background-color: '+couleur+'; height: 100%; width: '+largeur+';"> ');
  8. </script>
  9. <script language="JavaScript">
  10. var tps_inter = tps * 10;
  11. var ima2 = "";
  12. var imgsbefore = 0
  13. function pcgbar(pcg) {
  14. var totalbe = imgsbefore + 100
  15. if (pcg < totalbe) {
  16.         document.images[pcg].src = ima1;
  17.         newpcg = pcg + 1
  18.         timerID=setTimeout('pcgbar(newpcg);',tps_inter);
  19.         }
  20. else if (pcg == totalbe) {
  21. if (document.getElementById) {  // IE5, NS6
  22. document.getElementById('hidepage').style.visibility = 'hidden';
  23. }
  24. else {
  25. if (document.layers) {  // Netscape 4
  26. document.hidepage.visibility = 'hidden';
  27. }
  28. else// IE 4
  29. document.all.hidepage.style.visibility = 'hidden';
  30.       }
  31.    }
  32. }
  33. }
  34. if (document.images) {
  35. for (i=0;i<haut;i++){
  36. document.write("<br>" );
  37. }
  38. document.write ('<center><font face="arial" color="" size="2"><b>Veuillez patientez, chargement de la page...</b><font><br><br><table border=1 cellspacing=0 cellpadding=0 bordercolor="#000000" bgcolor="'+fond+'"><tr><td>');
  39. for (var i = 0; i < 100; i++) {
  40. var width= 1 * scale
  41.   var imgna = new Image()
  42.   imgna.src = ima2;
  43. document.write ('<img border=0 src=ima2; width="' + width + '" height="20">');
  44. }
  45. document.write ('</td></tr></table></center>');
  46. var startpnt = imgsbefore
  47. pcgbar(imgsbefore);
  48. }
  49. </script>
  50. </div>

Reply

Marsh Posté le 28-07-2004 à 12:26:00    

freed102 a écrit :

Bah en fait je vais faire un systeme d'upload de gros fichiers (genre video/son etc etc) alors va falloir faire patienter les utilisateurs pour pas qu'ils croient que le site est planté !

euh... faut faire attention avecle timeout sur un server apache...

Reply

Marsh Posté le 28-07-2004 à 12:26:00   

Reply

Marsh Posté le 28-07-2004 à 12:27:31    

freed102 a écrit :

et ça... ça ferait quoi ?
 

Code :
  1. /*
  2. Insérer ce code entre les balises <Body> </Body>
  3. */
  4. <script language="JavaScript">
  5. var largeur = screen.width;
  6. var haut = ((screen.height/2)+80)/30;
  7. document.write('<div id="hidepage" style="position: absolute; left:0px; top:0px; background-color: '+ couleur +'; layer-background-color: '+couleur+'; height: 100%; width: '+largeur+';"> ');
  8. </script>
  9. <script language="JavaScript">
  10. var tps_inter = tps * 10;
  11. var ima2 = "";
  12. var imgsbefore = 0
  13. function pcgbar(pcg) {
  14. var totalbe = imgsbefore + 100
  15. if (pcg < totalbe) {
  16.         document.images[pcg].src = ima1;
  17.         newpcg = pcg + 1
  18.         timerID=setTimeout('pcgbar(newpcg);',tps_inter);
  19.         }
  20. else if (pcg == totalbe) {
  21. if (document.getElementById) {  // IE5, NS6
  22. document.getElementById('hidepage').style.visibility = 'hidden';
  23. }
  24. else {
  25. if (document.layers) {  // Netscape 4
  26. document.hidepage.visibility = 'hidden';
  27. }
  28. else// IE 4
  29. document.all.hidepage.style.visibility = 'hidden';
  30.       }
  31.    }
  32. }
  33. }
  34. if (document.images) {
  35. for (i=0;i<haut;i++){
  36. document.write("<br>" );
  37. }
  38. document.write ('<center><font face="arial" color="" size="2"><b>Veuillez patientez, chargement de la page...</b><font><br><br><table border=1 cellspacing=0 cellpadding=0 bordercolor="#000000" bgcolor="'+fond+'"><tr><td>');
  39. for (var i = 0; i < 100; i++) {
  40. var width= 1 * scale
  41.   var imgna = new Image()
  42.   imgna.src = ima2;
  43. document.write ('<img border=0 src=ima2; width="' + width + '" height="20">');
  44. }
  45. document.write ('</td></tr></table></center>');
  46. var startpnt = imgsbefore
  47. pcgbar(imgsbefore);
  48. }
  49. </script>
  50. </div>



1/ c'est du javascript
2/ c'est pour chargement en down, pas du chargement en up comme tu veux

Reply

Marsh Posté le 28-07-2004 à 12:33:02    

ouai c pas gagné ça encore ! pourtant je vous jure que sur Yahoo mail on voit l'avancement en dynamique de l'upload... avec les pourcentages, les octets qui defilent etc etc.. c tres efficace ! mais alors je suis pas capable de savoir comment c'est fait !


---------------
Freed102
Reply

Marsh Posté le 28-07-2004 à 12:35:02    

freed102 a écrit :

ouai c pas gagné ça encore ! pourtant je vous jure que sur Yahoo mail on voit l'avancement en dynamique de l'upload... avec les pourcentages, les octets qui defilent etc etc.. c tres efficace ! mais alors je suis pas capable de savoir comment c'est fait !

certainement pas du php [:spamafote]

Reply

Marsh Posté le 28-07-2004 à 12:37:49    

Je sais qu'il y a une fonction php qui envoie le contenu d'une page au navigateur avant que la page soit totalement interprétée coté serveur, je c plu comment ca s'appelle..

Reply

Marsh Posté le 28-07-2004 à 12:39:11    

RiderCrazy a écrit :

certainement pas du php [:spamafote]


 
http://www.clonecopy.net/freed/yahoo.gif


---------------
Freed102
Reply

Marsh Posté le 28-07-2004 à 12:39:17    

Yahoo Mail ca marche avec Moz/Fox? pq ce sont ptet des ActiveX -_-
 
file nous le source stp, à voir le SC ca ressemble lourdement à des ActiveX ou des conneries du style -_-

Citation :

Je sais qu'il y a une fonction php qui envoie le contenu d'une page au navigateur avant que la page soit totalement interprétée coté serveur, je c plu comment ca s'appelle..


jamais du PHP n'est censé arriver côté client, excepté à la limite si on empêche son interprétation. stou.
Et commencer à envoyer la page en cours d'interprétation ca ne change rien, ca permet pas de la modifier une fois arrivée chez le client


Message édité par masklinn le 28-07-2004 à 12:42:02
Reply

Marsh Posté le 28-07-2004 à 12:40:07    

esox_ch a écrit :

Je sais qu'il y a une fonction php qui envoie le contenu d'une page au navigateur avant que la page soit totalement interprétée coté serveur, je c plu comment ca s'appelle..

[:wam]

Reply

Marsh Posté le 28-07-2004 à 12:42:42    


1666 min pour 1Mo :ouch:  
mais bon, un screenshot ca me dit pas ce que c'est comme code... je pencherai bien pour du javascript ou de l'activeX comm dit Masklinn

Reply

Marsh Posté le 28-07-2004 à 12:46:38    

Masklinn a écrit :

Yahoo Mail ca marche avec Moz/Fox? pq ce sont ptet des ActiveX -_-
 
file nous le source stp, à voir le SC ca ressemble lourdement à des ActiveX ou des conneries du style -_-

Citation :

Je sais qu'il y a une fonction php qui envoie le contenu d'une page au navigateur avant que la page soit totalement interprétée coté serveur, je c plu comment ca s'appelle..


jamais du PHP n'est censé arriver côté client, excepté à la limite si on empêche son interprétation. stou.
Et commencer à envoyer la page en cours d'interprétation ca ne change rien, ca permet pas de la modifier une fois arrivée chez le client


 
Qui a parlé d'envoyer coté client une source PHP. Je dit juste que je suis presque sur d'avoir vu une fonction qui force le serveur a envoyer une partie de l'html au client avant que la fin du script ne soit complétée

Reply

Marsh Posté le 28-07-2004 à 12:47:17    

Masklinn a écrit :

Yahoo Mail ca marche avec Moz/Fox? pq ce sont ptet des ActiveX -_-
 
file nous le source stp, à voir le SC ca ressemble lourdement à des ActiveX ou des conneries du style -_-

Citation :

Je sais qu'il y a une fonction php qui envoie le contenu d'une page au navigateur avant que la page soit totalement interprétée coté serveur, je c plu comment ca s'appelle..


jamais du PHP n'est censé arriver côté client, excepté à la limite si on empêche son interprétation. stou.
Et commencer à envoyer la page en cours d'interprétation ca ne change rien, ca permet pas de la modifier une fois arrivée chez le client


 
Voila le source :

Code :
  1. <script type="text/javascript">
  2. <!--
  3. if(typeof top.frames["wmailmain"] != "undefined" ) window.open("http://mail.yahoo.com", "_top" );
  4. // -->
  5. </script>
  6. <noscript>
  7. <META HTTP-EQUIV=Refresh CONTENT="0; URL=/ym/login?nojs=1">
  8. </noscript>
  9. <script type="text/javascript" src="http://us.js1.yimg.com/us.yimg.com/
  10. lib/pim/r/medici/4/mail/mailcommonlib.js"></script>
  11.  <script type="text/javascript">
  12.   function Remove(index)
  13.   {
  14.    document.Attachments.action += "&Unattach_" + index + "=1";
  15.    document.Attachments.submit();
  16.   }
  17.   function Done()
  18.   {
  19.    document.Compose.FName.value = ""; // prevent infinite loop
  20.    document.Compose.submit();
  21.   }
  22.   function AttachMoreFiles()
  23.   {
  24.    document.Attachments.action += "&MoreAtt=1";
  25.    document.Attachments.submit();
  26.   }
  27.   function VirusScanResults(index)
  28.   {
  29.    document.Attachments.action += "&VSumm=File" + index;
  30.    document.Attachments.submit();
  31.   }
  32.    var nextHiddenIndex = 5;
  33.    function AddFileInput()
  34.    {
  35.     ylib_getObj("fileInput" + nextHiddenIndex).style.display = document.all ? "block" : "table-row";
  36.     nextHiddenIndex++;
  37.     if(nextHiddenIndex >= 50) ylib_getObj("attachMoreLink" ).style.display = "none";
  38.    }
  39.      function KeyPress()
  40.      {
  41.   if (event.keyCode == 13) {
  42.       BeginAttach();
  43.   }
  44.      }
  45.      function UnescapeBackslash(path)
  46.      {
  47.   return path.replace(new RegExp("&#92;", ["gi"]), "\\" );
  48.      }
  49.      function GoodMailTo()
  50.      {
  51.   var version = typeof document.all.ymAttach.Version == "undefined" ?
  52.       "Product=1.0.0.0 File=0.0.0.0"
  53.       :
  54.       document.all.ymAttach.Version;
  55.   var required = "Product=1.0.0.0 File=2003.4.16.1";
  56.   return CompareVersions(GetVersion(version), GetVersion(required)) >= 0;
  57.      }
  58.      function HaveMailTo()
  59.      {
  60.   return typeof document.all.ymAttach.Version != "undefined";
  61.      }
  62.      function GetVersion(string)
  63.      {
  64.   var i = string.indexOf("File=" );
  65.   if (i == -1) {
  66.       return [0, 0, 0, 0];
  67.   }
  68.   var version = string.substr(i + 5).split("." );
  69.   if (version.length != 4) {
  70.       return [0, 0, 0, 0];
  71.   }
  72.   for (var i = 0; i < 4; i++) {
  73.       version[i] = parseInt(version[i]);
  74.   }
  75.   return version;
  76.      }
  77.      function CompareVersions(v1, v2)
  78.      {
  79.   for (var i = 0; i < 4; i++) {
  80.       if (v1[i] < v2[i]) {
  81.    return -1;
  82.       }
  83.       if (v1[i] > v2[i]) {
  84.    return 1;
  85.       }
  86.   }
  87.   return 0;
  88.      }
  89.      function GetDisplayName(path)
  90.      {
  91.   var i;
  92.   if (
  93.       (i = path.lastIndexOf("\\" )) != -1
  94.       ||
  95.       (i = path.lastIndexOf("/" )) != -1
  96.   ) {
  97.       return i < path.length ? path.substring(i + 1) : "";
  98.   }
  99.   return path;
  100.      }
  101.      function BeginAttach()
  102.      {
  103.    if(!GoodMailTo())
  104.    {
  105.     document.all.stuff.style.display = "none";
  106.     document.all.globalbuttonbartop.style.display = "none";
  107.     document.all.globalbuttonbarbottom.style.display = "none";
  108.     if (document.all.problem) {
  109.         document.all.problem.style.display = "none";
  110.     }
  111.     document.all.progress.style.display = "inline";
  112.     document.Attachments.UPL.value = "1";
  113.     document.Attachments.target = "asynch";
  114.     document.Attachments.submit();
  115.    }
  116.    else
  117.    {
  118.     for (var i=0; i<50; i++)
  119.     {
  120.      var e = document.Attachments["userFile" + i];
  121.      if(e && e.value != "" )
  122.      {
  123.       document.all.stuff.style.display = "none";
  124.       document.all.ymAttach.style.display = "inline";
  125.       document.all.globalbuttonbartop.style.display = "none";
  126.       document.all.globalbuttonbarbottom.style.display = "none";
  127.       if (document.all.problem) {
  128.           document.all.problem.style.display = "none";
  129.       }
  130.       window.setTimeout("FinishAttach()", 100);
  131.       break;
  132.      }
  133.     }
  134.    }
  135.   }
  136.      function FinishAttach()
  137.      {
  138.   for (var i = 0; i < 50; i++) {
  139.       var e = document.Attachments["userFile" + i];
  140.       if (e && e.value != "" ) {
  141.    var path = e.value;
  142.    var displayName = GetDisplayName(path);
  143.    if (displayName == "" ) {
  144.        document.Attachments.Prob.value = "BadFile";
  145.        break;
  146.    }
  147.    document.all.ymAttach.AddFile(path, displayName);
  148.    e.disabled = true;
  149.       }
  150.   }
  151.   if (document.Attachments.Prob.value == "" ) {
  152.       document.all.ymAttach.Upload();
  153.       if (document.all.ymAttach.AttData == "" ) {
  154.    document.Attachments.Prob.value = "NoUpload";
  155.       }
  156.       if (document.all.ymAttach.ResultErrorCode != 0) {
  157.    if (document.all.ymAttach.ResultErrorCode & 2) {
  158.        document.Attachments.Prob.value = "TotalSize";
  159.    }
  160.    else if (document.all.ymAttach.ResultErrorCode & 4) {
  161.        document.Attachments.Prob.value = "NumFiles";
  162.    }
  163.    else if (document.all.ymAttach.ResultErrorCode & 32) {
  164.        document.Attachments.Prob.value = "BadFile";
  165.    }
  166.    else if (document.all.ymAttach.ResultErrorCode & 64) {
  167.        document.Attachments.Prob.value = "FileSize";
  168.    }
  169.    else {
  170.        document.Attachments.Prob.value = "NoUpload";
  171.    }
  172.       }
  173.   }
  174.   document.Attachments.AttData.value = document.all.ymAttach.AttData;
  175.   document.Attachments.submit();
  176.      }
  177.      function Initialize()
  178.      {
  179.      }
  180.      function AsynchReady()
  181.      {
  182.   window.setTimeout("CopyFromAsynch()", 100);
  183.      }
  184.      function CopyFromAsynch()
  185.      {
  186.   if (  asynch == null ||
  187.    asynch.document == null ||
  188.    asynch.document.body == null ||
  189.    typeof asynch.document.body.innerHTML == "undefined" )
  190.   {
  191.    return;
  192.   }
  193.   document.body.innerHTML = asynch.document.body.innerHTML;
  194.      }
  195. </script>
  196.     <script>
  197.   function OnLoad()
  198.   {
  199.       if (
  200.    window != window.top
  201.    &&
  202.    typeof window.top.AsynchReady != "undefined"
  203.       ) {
  204.    window.top.AsynchReady();
  205.       }
  206.   }
  207. </script>
  208. </head>
  209. <body>
  210. <script type="text/javascript">
  211.     function Help(link)
  212.     {
  213.  window.open(link,"help","width=400,height=500,scrollbars=yes,dependent=yes" );
  214.     }
  215.     if(document.cookie != "" && document.cookie.indexOf("Fm3BBB" ) == -1) window.open("http://mail.yahoo.com", "_top" );
  216.     var newWin=null;
  217.     var onscreen=false;
  218.     function NewWin(url,name,xpos,ypos,width,height)
  219.     {
  220.        newWin=window.open(
  221.            url,
  222.            name,
  223.            "screenX="+xpos+",screenY="+ypos+",WIDTH="+width+",HEIGHT="+height+
  224.            ",location=0,resizable=1,status=0,titlebar=1,
  225. directories=0,toolbar=0,menubar=0,scrollbars=0,status=0"
  226.        );
  227.        newWin.focus();
  228.        onscreen=true;
  229.     }
  230. </script>


Message édité par freed102 le 28-07-2004 à 12:55:45
Reply

Marsh Posté le 28-07-2004 à 12:47:36    

ben le JS je doute, il faudrait se reconnecter au serveur et envoyer un fichier du local vers le distant à coup de JS (j'ai comme un doute la) ou alors utiliser un send HTTP avec interception des évènements du send (je doute qu'il en envoie, et je doute au moins autant qu'il soit possible de les intercepter -_-)
 
ou alors ptet une applet java, je sais pas quelles sont les possibilités des applets (jamais essayé d'en faire)
 
mais le plus probable c'est que ca soit fait a coup d'activeX
 

Citation :

Qui a parlé d'envoyer coté client une source PHP. Je dit juste que je suis presque sur d'avoir vu une fonction qui force le serveur a envoyer une partie de l'html au client avant que la fin du script ne soit complétée


intérêt nul, ca permettrait juste d'accélerer l'affichage des pages en cas de  traitements complexes
 
la source que t'as mis c'est la source récupérée au même endroit que celui ou t'as pris le screenshot?


Message édité par masklinn le 28-07-2004 à 12:51:20
Reply

Marsh Posté le 28-07-2004 à 12:49:10    

A coup d'applet ca serait largement possible, mais suicidaire de leur part etant donné que de loin pas tout le monde possede la virtual machine java installée

Reply

Marsh Posté le 28-07-2004 à 12:52:48    

esox_ch a écrit :

A coup d'applet ca serait largement possible, mais suicidaire de leur part etant donné que de loin pas tout le monde possede la virtual machine java installée


 
et un ActiveX c propre à IE c ça ?

Reply

Marsh Posté le 28-07-2004 à 13:01:27    

Masklinn a écrit :

ben le JS je doute, il faudrait se reconnecter au serveur et envoyer un fichier du local vers le distant à coup de JS (j'ai comme un doute la) ou alors utiliser un send HTTP avec interception des évènements du send (je doute qu'il en envoie, et je doute au moins autant qu'il soit possible de les intercepter -_-)
 
ou alors ptet une applet java, je sais pas quelles sont les possibilités des applets (jamais essayé d'en faire)
 
mais le plus probable c'est que ca soit fait a coup d'activeX
 

Citation :

Qui a parlé d'envoyer coté client une source PHP. Je dit juste que je suis presque sur d'avoir vu une fonction qui force le serveur a envoyer une partie de l'html au client avant que la fin du script ne soit complétée


intérêt nul, ca permettrait juste d'accélerer l'affichage des pages en cas de  traitements complexes
 
la source que t'as mis c'est la source récupérée au même endroit que celui ou t'as pris le screenshot?


 
oui la source c'est là ou ya le screenshot.. j'ai pas mis le HTML qui va avec... mais ce qui est bizarre c que sur le HTML on voit tous les champs type='file'...
 
Attendez... j'ai ça aussi :
 

Code :
  1. <object id="ymAttach" classid="clsid:AA218328-0EA8-4D70-8972-E987A9190FF4" style="width:80%;height:100;display:none;">
  2. <param name="Host" value="fr.f416.mail.yahoo.com">
  3.          <param name="Request" value="/ym/Attachments?YY=92810&xml=1">
  4.          <param name="MaxTotalSize" value="10485760">
  5. <param name="UploadChunkSize" value="256">
  6. <param name="ProgressCompleteColor" value="abcdef">
  7. <param name="BackgroundColor" value="F6F6F6">
  8. <param name="ProgressIncompleteColor" value="F6F6F6">
  9. <param name="TextColor" value="000000">
  10. <param name="TextPleaseWait" value="L'ajout des fichiers suivants est en cours&nbsp;: ">
  11. <param name="TextBytesSent" value="Octets envoyés&nbsp;: ">
  12. <param name="TextETA" value="Durée restante estimée : ">
  13. <param name="TextETACalculating" value="Calcul...">
  14. <param name="TextFormatProgress" value="%1 of %2 (%3%%)">
  15. <param name="TextFormatMinutes" value="%d minutes"> 
  16. <param name="TextFormatMinute" value="%d minute"> 
  17. <param name="TextFormatSeconds" value="%d seconds"> 
  18. <param name="TextFormatSecond" value="%d second"> 
  19. <param name="CountryCode" value="US"> 
  20. <param name="TextUploadProcessing" value="Veuillez patienter pendant que Norton Anti-Virus contrôle votre pièce jointe...">
  21. <param name="FontName" value="Tahoma">
  22. <param name="FontPointSize" value="10">
  23. <param name="MaxNumFiles" value="50">
  24. <param name="MaxSizePerFile" value="10485760">
  25. </object>

Reply

Marsh Posté le 28-07-2004 à 13:05:19    

freed102 a écrit :

et un ActiveX c propre à IE c ça ?


ouaip, ya des plugins pour le faire tourner sous Moz/Fox, mais à la base ca sert uniquement a générer des failles de sécurité dans IE  :bounce:  
 
 
Je suis pas un spécialiste des ActiveX (j'en ai jamais fait, je compte pas en faire, les activeX ca pue  :whistle: ) mais vue la tronche de ton <object> je vois pas ce que ca pourrait être d'autre
 
d'ailleurs ca tournera jamais sous Mozilla/Firefox

Reply

Marsh Posté le 28-07-2004 à 16:42:29    

Je viens de faire un test.
Avec Opera, j'ai rien du tout, à part la barre d'avancement du navigateur.
Par contre, sous IE (le 6) il me redirige sur une page où il y a un pauvre gif animé. A la fin du chargemnt, il me redirige alors vers une page...

Reply

Marsh Posté le 28-07-2004 à 16:54:06    

j'ai essayé aussi... c vrai que ça marche pas pareil !.. en fait on voit pas l'activeX

Reply

Marsh Posté le 04-08-2004 à 22:53:26    

désolé si ça a déjà été dit, mais j'ai as le temps de tout lire, alors voici ce que j'ai fait :
 
pour un générateur de galerie j'avais voulu faire une sorte de barre d'avancement des upload, j'ai donc fait un script qui "regarde" le nombre de fichier dans un répertoire, et j'actualiste la page avec un meta tag, mais dans cette galerie je connaissais deja le nombre total d'image a uploader donc je pouvais faire un calcul avec le nombre d'image deja uploadées pour voir un pourcentage. on doit pouvoir bidouiller qq chose pour faire la meme chose avec la taille des fichiers.
 
voilà le code de la page :
 

Code :
  1. <?
  2. session_start();
  3. if(empty($_SESSION['depart']))
  4. {
  5. $debut = explode(" ",microtime());
  6. $_SESSION['depart'] = $debut[1]+$debut[0];
  7. }
  8. echo '
  9. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
  10. "http://www.w3.org/TR/html4/loose.dtd">
  11. <html>
  12. <head>
  13. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  14. <link href="style.css" rel="stylesheet" type="text/css">
  15. <title>Etat d\'avancement</title>
  16. </head>
  17. <body>
  18. <table width="100%" border="0" cellspacing="0" cellpadding="15" align="center" style="font.size=\'12\'">
  19.   <tr>
  20.     <td>
  21. ';
  22. if($_SESSION['repertoire'] && $_SESSION['nb_pages'])
  23. {
  24. //calcul du nombre de fichiers zip dans le repertoire - logiciels
  25. /**************************************/
  26. $vrep=$_SESSION['repertoire']."/img/"; // le chemin vers le répertoire à parcourir
  27. /**************************************/
  28. $rep=@opendir($vrep);
  29. $i=0;
  30. while ($nomfichier=@readdir($rep) )
  31. {
  32. // extension du fichier ici jpg
  33. if( substr($nomfichier,-3)=="jpg" )
  34. {
  35. $i++;
  36. }
  37. }
  38. $image = $i-1;
  39. echo '<center><img src="'.$vrep.$image.'.jpg"><br>Thumbnail de la page '.$i.'</center>';
  40. echo "Répertoire de copie des fichiers : ".$_SESSION['repertoire'];
  41. echo "<br>Répertoire de copie des images : ".$_SESSION['repertoire']."/img/";
  42. echo "<br>Nombres de pages de l'album : ".$_SESSION['nb_pages'];
  43. // affichage du nombre de fichiers  
  44. echo"<br>Fichiers images générés : $i";
  45. @closedir($rep);
  46. $pourcentage = round( ( $i*100 ) / $_SESSION['nb_pages'],0);
  47. echo '<br><br><b><center>Pourcentage effectué : <font size="36" ';
  48. if($pourcentage == 100) {echo 'color="red"';}
  49. echo '>'.$pourcentage.'%</font><br>
  50. <table width="60%"  border="0" align="center" cellpadding="0" cellspacing="0"><tr>';
  51. for($j=0;$j<100;$j++)
  52. {
  53.  if($j < $pourcentage) {echo '<td bgcolor="#333333"><img src="trans.gif"></td>';}
  54.  elseif($j > $pourcentage) {echo '<td bgcolor="#FFFFFF"><img src="trans.gif"></td>';}
  55. }
  56. echo '  </tr>
  57. </table></center></b></td>
  58.   </tr>
  59. </table>';
  60. if($pourcentage == 100)
  61. {
  62.  // ajouter un systeme pour bloquer le refresh !
  63.  $fin = explode(" ",microtime());
  64.  $fin = $fin[1]+$fin[0];
  65.  $temps_passe = round($fin-$_SESSION['depart'],1);
  66.  echo '<center>Le script a mit '.$temps_passe.'s pour s\'exécuter<br>';
  67.  echo '<input type="button" onclick="window.close()" value="Fermer"></center>';
  68. }
  69. else
  70. {
  71.  echo '<meta http-equiv="refresh" content="1">';
  72. }
  73. echo ' </body>
  74. </html>';
  75. }
  76. ?>


 
j'espere que ça pourrai t'aider a+

Reply

Marsh Posté le 05-08-2004 à 13:43:43    

au lieu de te prendre la tete pour un effet inutile, tu n'as qu'a mettre un ptit message

Code :
  1. echo "attendez svp $monsieur";


 
et quand t'as finis tu met un message du genre
 

Code :
  1. c'est fini $merci_et_aurevoir


Message édité par joelan le 05-08-2004 à 13:45:10

---------------
job
Reply

Marsh Posté le 05-08-2004 à 13:47:03    

joelan a écrit :

au lieu de te prendre la tete pour un effet inutile, tu n'as qu'a mettre un ptit message

Code :
  1. echo "attendez svp $monsieur";


 
et quand t'as finis tu met un message du genre
 

Code :
  1. c'est fini $merci_et_aurevoir



 
Et tu fais ça comment ? :o  
Un meta refresh aussi ?

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed