begin process at 2010 03 12 14:32:40
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Graphique

 > PROGRESSBAR (BARRE DE PROGRESSION AVEC AFFICHAGE DU POURCENTAGE EN COURS)

PROGRESSBAR (BARRE DE PROGRESSION AVEC AFFICHAGE DU POURCENTAGE EN COURS)


 Information sur la source

Note :
8,32 / 10 - par 28 personnes
8,32 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Graphique Classé sous :progressbar, progression, barre, loading, bar Niveau :Débutant Date de création :09/07/2005 Vu :45 645

Auteur : frop01

Ecrire un message privé
Site perso
Commentaire sur cette source (75)
Ajouter un commentaire et/ou une note

 Description

Cliquez pour voir la capture en taille normale
Voici une fonction qui affiche dynamiquement une barre de progression avec le pourcentage en cours.

Le fichier qui contient les procédures du progressbar est "progressbar.php"

Mode d'utilisation dans votre script:

1/ charger le fichier :  include ("progressbar.php");
2/ initialisation de la barre : Initialize(x,y,largeur,hauteur,'couleur bordure','couleur du pourcentage','couleur de la barre de progression');
3/ Insertion de ProgressBar($i); dans votre boucle:

Source

  • ************************************************
  • ******************************** progressbar.php
  • <?php
  • function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
  • {
  • $tailletxt=$hauteur-10;
  • echo '<div id="pourcentage" style="position:absolute;top:'.$haut;
  • echo ';left:'.$gauche;
  • echo ';width:'.$largeur.'px';
  • echo ';height:'.$hauteur.'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
  • echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';
  • echo '<div id="progrbar" style="position:absolute;top:'.($haut+1); //+1
  • echo ';left:'.($gauche+1); //+1
  • echo ';width:0px';
  • echo ';height:'.$hauteur.'px';
  • echo ';background-color:'.$bg_col.';z-index:0;"></div>';
  • }
  • function ProgressBar($indice)
  • {
  • echo "\n<script>";
  • echo "document.getElementById(\"pourcentage\").innerHTML='".$indice."%';";
  • echo "document.getElementById('progrbar').style.width=".($indice*2).";\n";
  • echo "</script>";
  • flush(); // explication : http://www.manuelphp.com/php/function.flush.php
  • }
  • ?>
  • ******************************************
  • ******************************** index.php
  • <html>
  • <body>
  • <?php
  • include ("progressbar.php");
  • //Initialize(x,y,largeur,hauteur,'couleur bordure','couleur du pourcentage','couleur de la barre de progression');
  • Initialize(50,60,200,30,'#000000','#FFCC00','#006699'); // initialisation de la barre de progression
  • for ($i=0;$i<=100;$i++)
  • {
  • ProgressBar($i); // réaffichage de la barre avec le nouvel indice
  • //***********************
  • // ici on mets notre code
  • for ($j=0;$j<=100000;$j++) {$p=1;} // dans cette exemple, j'ai une boucle de retardement
  • //**************************
  • }
  • ?>
  • </body>
  • </html>
************************************************
******************************** progressbar.php
<?php

  function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
  {
   $tailletxt=$hauteur-10;
   echo '<div id="pourcentage" style="position:absolute;top:'.$haut;
   echo ';left:'.$gauche;
   echo ';width:'.$largeur.'px';
   echo ';height:'.$hauteur.'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
   echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';

   echo '<div id="progrbar" style="position:absolute;top:'.($haut+1); //+1
   echo ';left:'.($gauche+1); //+1
   echo ';width:0px';
   echo ';height:'.$hauteur.'px';
   echo ';background-color:'.$bg_col.';z-index:0;"></div>';

  }
  function ProgressBar($indice)
  {
    echo "\n<script>";
    echo "document.getElementById(\"pourcentage\").innerHTML='".$indice."%';";
    echo "document.getElementById('progrbar').style.width=".($indice*2).";\n";
    echo "</script>";
    flush();  // explication : http://www.manuelphp.com/php/function.flush.php
  }

?>



******************************************
******************************** index.php

<html>
<body>
<?php

  include ("progressbar.php");
  
//Initialize(x,y,largeur,hauteur,'couleur bordure','couleur du pourcentage','couleur de la barre de progression');
  Initialize(50,60,200,30,'#000000','#FFCC00','#006699');  // initialisation de la barre de progression
  for ($i=0;$i<=100;$i++)
  {
  ProgressBar($i);   // réaffichage de la barre avec le nouvel indice
  //***********************
  // ici on mets notre code
  for ($j=0;$j<=100000;$j++)  {$p=1;} // dans cette exemple, j'ai une boucle de retardement
  //**************************
  }
?>
</body>
</html>

 Conclusion

Testé sur FireFox, IE6 .

Vous remarquerez que le code n'est pas entièrement paramètrable néanmoins je ferai des mises à jour selon vos commentaires..

Bonne continuation.


 Sources du même auteur

DÉTERMINER LA TAILLE D'UN BASE DE DONNÉES MYSQL ET LE NOMBRE...
LISTE DES CHAMPS ET STRUCTURE D'UNE TABLE SQLITE (PHP 5)
LISTE DES TABLES ET STRUCTURE D'UNE BASE DE DONNÉES SQLITE (...
Source avec Zip BASE DE DONNÉES SQLITE SOUS PHP 4
AFFICHER UNE LISTE DÉROULANTE EN FONCTION D'UNE AUTRE LISTE ...

 Sources de la même categorie

Source avec une capture DES HISTOGRAMES , CAMEMBERT 3D ET ÉCLATÉS CRÉÉ AU VOL EN PH... par zozo14
AJOUTER UN ARRIÈRE PLAN SUR UNE IMAGE par digitaldax
REDIMENSIONNER UNE IMAGE EN PHP par digitaldax
Source avec Zip RECHERCHE DE MOTIF DANS UNE IMAGE par ParseError
BARRES PARAMÉTRABLES EN DÉGRADÉ DE COULEUR ET AVEC TEXTE DA... par hornetbzz

 Sources en rapport avec celle ci

BARRES PARAMÉTRABLES EN DÉGRADÉ DE COULEUR ET AVEC TEXTE DA... par hornetbzz
Source avec une capture GÉNÉRER UNE PROGRESSBAR (BARRE DE PROGRESSION) EN FORMAT IMA... par Tioneb
Source avec Zip Source avec une capture CODE BARE!!! par toutoos
GÉNÉRATEUR DE CODE BARRE 128B par tuckleberry
PROGRESS BAR : CLASSE PHP4 par davwart

Commentaires et avis

Commentaire de NeoZer0 le 09/07/2005 16:03:50

je cromprend pas trop l'interet?

Commentaire de frop01 le 09/07/2005 17:03:26

LoL !
tout simplement pour connaitre l'état d'avancement d'un tâche précise et que pour l'utilisateur ne s'ennuie pas et faire la fenetre par doute que le site est planté !!

Si par exemple tu es entrain de copier un fichier de 50 Mo d'un serveur distant à un dique local !! comment savoir l'état d'avancement ???
ou bien une longue et dure recherhce dans une base de données qui peut durer 1 minute comment savoir si ca marche ou pas ??

Ben il ya des milliers de bonnes raison d'utiliser ce script !!

Je suis pas un commercial mais J'espère t'avoir convaincu !! ;)


Commentaire de lumesh le 09/07/2005 17:23:55

oui mais un truc ... le PHP est serveur/Side, le javascript est comment dire executé par ton naviguateur.
Tout ce qui est serveur/Side n'est pas encore vu par le naviguateur. Le PHP ne fait que créer du code HTML en fonction de conditions c'est tout. Donc en gros la progression d'une boucle en PHP ne se verra pas par ton naviguateur mais sera effectuée avant que la page soit affichée par celui-ci.

Par conscequent je ne comprend mais alors pas dutout de l'interet d'une telle source en PHP .... en javascript okay, peut etre, en ASP (pourquoi pas grace a l'interraction possible avec le naviguateur IE via le vbscript et le javascript) et encore mais la en PHP je doute sincerement !!!!

Enfin bon. Pas convaincu du tout.

Commentaire de zeratul67 le 09/07/2005 22:13:44

Tentrative de réponse pour Lumesh : parfois, une grosse opération peut être effectuer en PHP en forcenant le rechargement de la même page, plusieurs fois (pour éviter de dépasser le temps d'exécution maximum autorisé sur un serveur par exemple). Dans ce cas, on peut afficher une progress bar, mise à jour entre chaque rechargement.

Commentaire de lumesh le 10/07/2005 10:45:58

oui ca peut etres une idee et encore que bon une grosse operation ralentit deja le chgargrment dune page ce qui en gros ne plait pas au visiteur donc ouaip pourquoi pas .... toutjours pas convaincu mais bon le principal est que tu en as l'utilité.

Commentaire de frop01 le 11/07/2005 10:35:28

Salut,

L'avantage de ce code, c'est qu'il ne recharge pas la page à chaque affichage mais il modifie uniquement le texte du pourcentage et le width de la barre dynamiquement par getElementById()

donc dans la boucle que le serveur traite, il envoi à chanque fois les nouvelles paramètres pour les DIV (sans recharger la page).

Je suis tout à fait à votre disposition pour plus d'informations jusqu'à ce que Lumesh soit convaincu ;)

Merci

Commentaire de Oueb le 11/07/2005 11:40:58

Imagine, tu a un 50 aine de requetes sql a traiter a la suite, bah pres chaque requete tu increment le %tage de 2% ... ca avance, c'est long mais le visteur vois que ca avance ... moi ca me semble logique, enfin bon tu peux rester sceptique, meme si j'en ai pa l'utilité !

Commentaire de frop01 le 11/07/2005 12:02:14

Je te remerci Oueb pour ton commentaire qui justifie l'utilité du code.

Voici un exemple concert :

On va simuler une copie de fichier volumineux d'un serveur distant à un disque local C:

dans mon cas une fichier .zip de 100Mo situé dans http://localhost/download

1// Mettre le code Suivant pour un test dans le progressbar :

<html>
<body>
<?php
  
  $fichier_distant = "download/eclipse.zip";
  $fichier_local = "c:/".basename($fichier_distant);
  $fd = fopen($fichier_distant, 'rb');
  if (!$fd)
    die('Impossible d\'ouvrir le fichier distant');
  $fl = fopen($fichier_local, 'wb');
  $leng=filesize($fichier_distant);
  $rapport=$leng/100;
  $m=0;
  $i=1;
while (!feof($fd))
{
    $pp=fgets($fd);
    fputs($fl, $pp);
    $m=$m+strlen($pp);
    if ($m>$rapport) {
          $m=0;$i++;
          }
}
fclose($fd);
fclose($fl);
  
?>
</body>
</html>
----------------------------------------------

regarder le malaise à ne pas savoir où en est le navigateur !! pas d'infos

ensuite essayer avec le code suivant :


<html>
<body>
<?php

  include ("progressbar.php");
  
//Initialize(x,y,largeur,hauteur,'couleur bordure','couleur du pourcentage','couleur de la barre de progression');
  Initialize(50,60,200,30,'#000000','#FFCC00','#006699');  // initialisation de la barre de progression
  
  $fichier_distant = "download/eclipse.zip";
  $fichier_local = "c:/".basename($fichier_distant);
  $fd = fopen($fichier_distant, 'rb');
  if (!$fd)
    die('Impossible d\'ouvrir le fichier distant');
  $fl = fopen($fichier_local, 'wb');
  $leng=filesize($fichier_distant);
  $rapport=$leng/100;
  $m=0;
  $i=1;
while (!feof($fd))
{
    $pp=fgets($fd);
    fputs($fl, $pp);
    $m=$m+strlen($pp);
    if ($m>$rapport) {
          $m=0;$i++;
          ProgressBar($i);      
          }
}

fclose($fd);
fclose($fl);
  
?>
</body>
</html>


et admirer l'état d'avancement.

@+

Commentaire de LaurentKOogar le 11/07/2005 12:04:17

ouaip, pareil, pas convaincu :)
Tu as un exemple en ligne ?

Commentaire de frop01 le 11/07/2005 12:04:41


"1// Mettre le code Suivant pour un test dans le progressbar :"

pardon le premier exemple c'est pour tester SANS le progressbar

Commentaire de frop01 le 11/07/2005 12:07:00

LaurentKOogar> Désolé j'ai pas d'exemple en ligne mais essais le code en localhost (EasyPHP  ou autre)

Merci LaurentKOogar pour cette remarque! je ferai un exemple comparatif en ligne !!

Commentaire de Oueb le 11/07/2005 12:53:10

Hum je le mettrais en ligne  si tu veux avec un exemple inutile ?
Désolé pour le double post ... juste au moment de la déco des 24H .

Commentaire de GRenard le 11/07/2005 15:09:08

Exemple utilisé sur des pages contenant des Sondages payants ou gratuits.
C'est sur que c'est utilisé... et utile. Si j'le dis :P c'est que c'est vrai ;) ?

Commentaire de davwart le 12/07/2005 17:48:36

excellente source...
elle fonctionne (le probleme client/serveur est résolu par "flush").

j'ai juste ajouté un test d'indice: si il vaut 100, on efface le tout...
      function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
      {
      echo "<div id='progmaster'>";
       $tailletxt=$hauteur-10;
       echo '<div id="pourcentage" style="position:absolute;top:'.$haut;
       echo ';left:'.$gauche;
      echo ';width:'.$largeur.'px';
      echo ';height:'.$hauteur.'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
      echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';
    
      echo '<div id="progrbar" style="position:absolute;top:'.($haut+1); //+1
      echo ';left:'.($gauche+1); //+1
      echo ';width:0px';
      echo ';height:'.$hauteur.'px';
      echo ';background-color:'.$bg_col.';z-index:0;"></div>';
      echo "</div>";
    
     }
     function ProgressBar($indice)
     {
    if ($indice==100)
      {
       echo "\n<script>";
       echo "document.getElementById('progmaster').style.display='none'";
       echo "</script>";
      }
           echo "\n<script>";
       echo "document.getElementById(\"pourcentage\").innerHTML='".$indice."%';";
       echo "document.getElementById('progrbar').style.width=".($indice*2).";\n";
       echo "</script>";
      flush(); // explication : http://www.manuelphp.com/php/function.flush.php
     }


merci bien pour ta source ;)

Commentaire de frop01 le 13/07/2005 10:52:36

Merci GRenard et DAVWART pour vos commentaires.

Cependant, j'ai pas voulu détaillé l'explication de la fonction flush() pour ne pas encombrer le code:

flush  vide les buffers de sortie de PHP et tous ceux que PHP utilisait (CGI, un serveur web, etc.). Cette fonction envoit réellement toutes les données préparées vers l'utilsateur.

Certaines versions de Microsoft Internet Explorer ne commençeront l'affichage de la page qu'après avoir reçu 256 octets d'affichage. Cela vous obligera à envoyer des espaces supplémentaires pour afficher la page.


Merci pour la note devwart

Commentaire de davwart le 13/07/2005 10:59:19

oui !
ce qui m'enerve un peu..c'est que certains ont mal noté la source sous pretexte qu'ils ne la comprenaient pas (et n'ont pas pris ne serait ce que 3 min pour la tester..).
J'ai eu le meme pb avec une de mes sources Flash, me suis fait détruire.. lol

J'ai utilisé ta source pour faire l'affichage d'un gros tableau de données depuis mysql.
Un "count"  mysql me donne mon nombre de données et me sert alors pour incrémenter la progress bar.
Ca marche super .

Commentaire de frop01 le 13/07/2005 13:10:01

Merci, Ca fait plaisir qu'il te soit util ;)

Je reste à votre disposition pour plus de précision !!

Commentaire de Oueb le 13/07/2005 13:26:10

J'avais oublié ca .. 10/10 ;)

Commentaire de frop01 le 13/07/2005 13:33:10

Merci Oueb

Commentaire de GRenard le 13/07/2005 14:16:31

Avec le code pour télécharger Eclipse (allez hop la pub). La progress bar ne va pas jusqu'à 100%... en fait moi j'ai pris libethereal.dll (20.2mo) et la progress s'arrête à 93%

Je n'avais jamais utilisé cette méthode pour envoyer des données constantes du serveur :) c cool quand même.

Moi j'te donne 10 pour contre-balancer

Commentaire de GRenard le 13/07/2005 14:20:23

Par contre la source devient salement amochée :P
J'ai une idée pour toi, tu devrais essayer de te tourner sur l'AJAX mais cela implique que lorsque tu interroges le serveur, celui-ci doit avoir un moyen de savoir où il est rendu (processus externe) ET le client (ajax) ne doit pas demander d'autres info lorsqu'il a fini :)

Commentaire de frop01 le 13/07/2005 15:50:39

Merci Grenard pour la note et surtout pour l'info ;)

Par contre le code ici reste très simple pour une utilisation simple!!
sinon je ferai des améliorations au fur et à mesure des mes développement (de mes besoins).

Je connais pas la technique Ajax mais je ferai une recherche la dessus!!
apparemment c'est parfait pour des application lourde ;)

** pour info : http://www.codes-sources.com/ajax.aspx

Commentaire de Juliian le 23/07/2005 15:06:12

Coucou,

A l'installation de ton script, j'obtiens cette erreur :

Fatal error: Call to undefined function: progressbar() in c:\program files\easyphp1-8\www\vh\load.php on line 27

Sur le coup, j'ai cru à une mauvaise configuration de mon php.ini, mais le problème se répète sur jexiste, qui a pourtant d'habitude une bonne config d'apache..

Peut-être pourrais tu m'éclairer ?

Commentaire de frop01 le 23/07/2005 15:56:37

Salut,

il manque la valeur en paramètre : progressbar($indice)

$indice étant une variable incrémenter dans une boucle.

@+

Commentaire de juliiian le 24/07/2005 23:10:05

Coucou,

Le code était un copié collé de ton exemple, donc il comportait bien la variable $indice. :-/

Fatal error: Call to undefined function: progressbar() in c:\program files\easyphp1-8\www\barmetter\progress.php on line 24

Et j'ai dû supprimer la ligne initialize(...) a cause d'un message similaire du type :

Fatal error: Call to undefined function: initialize() in c:\program files\easyphp1-8\www\barmetter\progress.php on line 4

Ce doit venir de ma configuration de apache, tu aurais une idée ?

Bye bye

Commentaire de juliiian le 24/07/2005 23:13:25

Ca marche, je t'aime. :)

PS : On se marie quand tu veux !

Commentaire de frop01 le 24/07/2005 23:38:46

Oh oui ;)  même tout de suite si tu veux !!

pour le meilleur et pour le pire ;)

Commentaire de juliiian le 25/07/2005 19:38:56

*rerentre sur la pointe des pieds pour ne déranger personne, et va reveiller Frop01 dans son lit*

J'ai encore un petit problème avec le script d'exemple, jusque maintenant je m'en servais sans problème en local, et maintenant sur le net, et il y a à nouveau un petit problème : en fait "apparemment", le fichier est uploadé avant d'arriver sur la page comportant la barre de chargement, ce qui est naturellement embettant parceque le script perd tout son interêt, et mon petit test en local, quand j'ai voulu envoyer un fichier de 500 mo, la page de la progressbar a mis 3-4 minutes à se charger, et la progressbar a démarré ensuite et a commencé l'envois..

Donc j'ai une petite question : Cela vient-il du script a la base, ou de l'exemple, ou de moi, ou d'une divine malédiction qui a pris racine au dessus de ma tête ?(c'est paradoxale, ça..)

Commentaire de frop01 le 25/07/2005 23:02:46

Salut,

la fonction progressbar() doit être insérer dans la boucle où s'effectue la copie de fichier

Mais si tu utilises un code du genre :

move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadFile)
for ($i=0;$i<=100;$i++)
   {
   ProgressBar($i);
   }

ca sert à rien car le barre ne commence à progresser que si le fichier est uploader d'où le mot uploadED au passé

il faut utilisé une méthode d'upload par copie en octet ou par ligne comme sité en haut par fputs et fgets

while (!feof($fd))
{
    $pp=fgets($fd);  'lire un ligne
    fputs($fl, $pp); 'écrire la ligne
    $m=$m+strlen($pp); ' déterminer la taille de la ligne
    if ($m>$rapport) {
          $m=0;$i++;
          ProgressBar($i);  'afficher la barre    
          }
}


Mets ton code pour avoir une idée !!

@+

Commentaire de juliiian le 25/07/2005 23:07:19

Mon code est le tien, en fait. :)

  $fichier_local = "upload/".basename($fichier_distant);
  $fd = fopen($fichier_distant, 'rb');
  if (!$fd)
    die('Impossible d\'ouvrir le fichier distant');
  $fl = fopen($fichier_local, 'wb');
  $leng=filesize($fichier_distant);
  $rapport=$leng/100;
  $m=0;
  $i=1;
while (!feof($fd))
{
    $pp=fgets($fd);
    fputs($fl, $pp);
    $m=$m+strlen($pp);
    if ($m>$rapport) {
          $m=0;$i++;
          ProgressBar($i);      
          }
}

fclose($fd);
fclose($fl);
  
?>

Qui upload un fichier en partant d'un disque dur vers un serveur dédié..

Commentaire de massacr le 28/07/2005 16:54:33

Pour ceux qui ne veulent pas tester avec un fichier, mettez sleep(1); dans la boucle.
Très bon code : 10
A++

Commentaire de sdominici le 04/08/2005 02:44:50

Coucou à tous,

concernant les barres de progression en PHP il y a aussi un très bon package PEAR, un petit lien vers http://pear.php.net/package/HTML_Progress et un autre vers les démos associées http://pear.laurent-laville.org/HTML_Progress/examples/


Juste un remarque pour ceux qui ne sont toujours pas convaincu par le fonctionnement et pour abonder dans le sens de Frop01.

Avec PHP et apache, il est possible de faire de la bufferisation, Apache effectivement n'envoi pas les pages octets par octets mais par paquets (de taille configurable) et PHP peut controler ce buffer.

Autrement dit le script PHP coté serveur va dire à Apache :
1 - Enclenche la bufferisation de sortie - fonction ob_start(),
2 - Prépare plein d'infos pour l'écran du client (l'en-tête HTML pour commencer, puis par exemple, le menu en cours, des infos récapitulative et autres choses simples diverses et variées => et légère !),
3 - Affiche ensuite une barre de progression (vide) reconnus dans la page par un identifiant Javascript,
4 - Envoi toutes ces infos au client pour que le navigateur les affichent - fonction ob_end_flush(),
5 - Enclenche de nouveau la bufferisation de sortie - fonction ob_start(),

Le script va alors faire l'étape de traitement (longue) qui justifie cette barre de progression et sur un intervalle donné va envoyer au buffer un code javascript qui permet de modifier la barre de progression (et permet eventuellement d'afficher d'autres informations) puis va répéter les étapes 4 et 5 autant de fois que nécessaire - jusqu'à affichage complet de la barre.

Voilà, j'espère ne avoir trop empieté sur les commentaires.
Ciao,
Serge.

PS : Frop01, très bien ton code !

Commentaire de frop01 le 04/08/2005 11:40:07

Merci sdominici pour ces explications ;)

Commentaire de jean05 le 22/08/2005 17:57:26

ce code est fantastique !! merci !! 10 !!

hem, par contre mon boss veut que ce soit 100% compatible IE, normal pour les utilisateurs, malheureusement ma page ne s'affiche qu'à la fin du chargement et stoppe à 95% si le fichier et trop petit, alors qu'avec mozilla tout ce passe à merveille... y'a-t-il une configuration particulière à imposer au browser ou un petit mot clef forçant l'affichage sous IE ??

le code :
--------------------
dans la page (dans un tableau) :

Initialize(0,0,200,30,'#000000','#5BB105','#516AA3'); // initialisation de la barre de progression

$fichier_distant = $_POST['fichier'];
echo $fichier_distant."<br />";
$fichier_local = $repASigner.basename($fichier_distant);
echo $fichier_local."<br />";
$fd = fopen($fichier_distant, 'rb');
if (!$fd) die('Impossible d\'ouvrir le fichier distant');
$fl = fopen($fichier_local, 'wb');
$long=filesize($fichier_distant);
echo $long."<br />";
$rapport=$long/100;
$m=0;
$i=1;
while (!feof($fd)) {
   $pp=fgets($fd);
   fputs($fl, $pp);
   $m=$m+strlen($pp);
   if ($m>$rapport) {
      $m=0;$i++;
      ProgressBar($i);
   }
}
fclose($fd);
fclose($fl);

-------------------------------------
et le morceau inclus dans le header :

function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
{
$tailletxt=$hauteur-10;
echo '<div id="pourcentage" style="position:relative;top:'.$haut;
echo ';left:'.$gauche;
echo 'px;width:'.$largeur;
echo 'px;height:'.$hauteur.'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';

echo '<div id="progrbar" style="position:relative;top:-'.($hauteur+1);
echo 'px;left:0';
echo 'px;width:0px';
echo ';height:'.$hauteur.'px';
echo ';background-color:'.$bg_col.';z-index:0;"></div>';
}

function ProgressBar($indice)
{
echo "\n<script>";
echo "document.getElementById(\"pourcentage\").innerHTML='";
if ($indice !== 100){
  echo $indice,"%';";
}else{
  echo "Terminé';";
}
echo "document.getElementById('progrbar').style.width=".($indice*2).";\n";
echo "</script>";
flush();
}

merci d'avance ;)

Commentaire de jean05 le 22/08/2005 18:01:26

dsl pour le double post, j'ai reçu un message d'erreur du site en prime...

PS : j'ai retouché le code pour que mon affichage soit quasi identique dans Mozilla et IE
PS2 : la barre et dans une cellule de tableau centrée, ce qui permet le résultat équivalent mais rempli la barre par le centre... variante simpatique ;)

Commentaire de jean05 le 23/08/2005 10:28:53

hum... j'ai lu que Netscape n'affichait la page, même avec flush, que si les <table> étaient fermées... mais ce n'est pas le cas de IE n'est-ce pas ?

Commentaire de frop01 le 23/08/2005 12:32:35

salut JEAN05,

Désolé, Je ne l'ai pas tester sur netscape! mais sur IE ca fonctionne bien!!

Essai d'utiliser la classe progressbar créer par mon collègue DAVWART et on verra bien ;)

http://www.phpcs.com/code.aspx?ID=33185

et tenez moi au courant !!

Commentaire de jean05 le 24/08/2005 07:22:43

je ne prenais l'exemple de Netscape que pour comparer le fait que ça ne devrai marcher dans ce cas que si les balises <table> sont fermées, mais netscape... m'en fout. c'était juste pour savoir si IE avait le même comportement et comme j'ai mis la barre dans une table (structure obligatoire dans mon cas dûe par l'inclusion d'un en-tête et pied de page formants la table principale)j'epérais que quelqu'un me dise 'c'est pareille'... je testerais ça une autre fois, je dois enchainer sur autre chose...

il doit me manquer quelque chose car ça ne marche vraiment pas sous IE et pourtant tu me dis que ça marche... je vais tester en réseau local au boulot sur les différentes versions d'IE que je vais pouvoir trouver. le problème vient peut-etre de là.

je testerais avec les conseils de sdominici, puisque j'ai installé apache.

j'informerais du résultat, bonne continuation à tous !

Commentaire de kaaji le 24/08/2005 10:43:52

Je voulais savoir si avec ton code, on peut télécharger un fichier via une url et enregistrer ce fichier sur le disque dur.

Merci !

Commentaire de frop01 le 24/08/2005 11:46:48

JEAN05> OK !! Bonne continuation !

KAAJI > J'ai tester ca en local ca marche mais j'ai pas tester online sinon j'ai pas encore trouver la solution pour un DialogBox pour une séléction de dossier uniquement !! je pense que c'est faisable avec une applet Java !

Commentaire de kaaji le 24/08/2005 12:11:32

En faite en online, le fichier a l'air de se télécharger seulement il n'est pas enregistrer. En gros la progress bar fonctionne correctement, maisune fois le téléchargement terminer, le fichier télécharger est introuvable sur le disque.

Je ne sais pas pourquoi mais quand je met comme chemin de destination c:/ j'obtien ce message d'erreur : supplied argument is not a valid stream resource. Mais pas quand mais c:

Si vous pouviez m'aider ^^

Commentaire de oki972 le 28/09/2005 05:20:27

Salut !!
Alors j'ai parcouru un peu les commentaires ... je cherchais à savoir à quel point j'en étais dans l'exécution de requetes!
La je viens de faire un premier test :

  $i=0;
  $j=0;
  $nbre_requetes = 10000000;
  while ($i!=$nbre_requetes)
{
$req = "INSERT INTO `piouf` (`ID`) VALUES ('testons testons')";
   mysql_query($req);
$i++;
$rapport = (100*$i)/$nbre_requetes;
if($rapport>$j) {
    $j++;
ProgressBar($j);
}
}

J'ai été boire un café pendant ce temps, mais c'est niquel !
10/10 mon pote !!

Commentaire de piedpierre le 30/09/2005 00:44:59

Bonjour, je trouve cette source pas mal du tout, j'ai vu des exemples pour l'upload de fichiers distants de serveur à serveur qui marche bien, meme s'il faut bien ajouter px à chaque fin de mesures(width) sinon la progressbar n'affiche pas sa progression sur mozilla notament.
Ma question est la suivante : Est-il possible d'afficher cette progression pour un utilisateur utilisant un navigateur qui downloade un fichier présent sur le serveur ? et plus loin... reprendre un téléchargement interrompu ? En PHP, javascript. Merci pour vos réponses...

Commentaire de oki972 le 30/09/2005 01:32:26

De ce que je sais une barre de progression pour un téléchargement d'un fichier depuis un serveur n'a pas beaucoup d'intéret vu qu'il s'agit là d'une fonction des natives des OS : windows comme linux ou autre. Pour ce qui est de la reprise d'un téléchargement... (meme principe) [Je précise selon moi].
De plus le téléchargement d'un fichier ne nécessite pas l'exécution d'un script, pour moi tu as le lien et quand tu cliques c'est une liaison directe... la page web ne travaille plus à l'inverse de l'upload ou de requetes où là tant qu'il y a a upload ou a exécuter (dans le cas des requetes) ben la page travaille.
Good luck !
Oki -> Je vous envoie le Soleil de martinique ! (#)

Commentaire de frop01 le 30/09/2005 10:22:16

Bonnjour,

Le seul site (y en a forcément d'autres) que j'ai vu sur le net qui a son propre interface de download c'est IBM. Le téléchargement se fait par l'intermédiaire d'une fenêtre en applet java qui a pour mission de limiter le nombre de connexion par ip, cacher le répertoire d'où il vient et aussi limiter le taux de transfert.

Mais tout ca est possible avec php sauf un seul truc !! c'est comment créer une FolderBox (pour choisir le répertoire de destination et donc lire les disques du client) .

Je pense pas que php est suffisant dans ce cas la mais je bosse la dessus.

en attendant Grenard pour nous en dire plus :)

Commentaire de massacr le 30/09/2005 18:07:25

On peut peut etre lister les répertoires avec javascript, et envoyer ca au script PHP via les XMLHTTPRequest. Je crois qu'il est possible de parcourir les disques du client en javascript, ou alors en ActiveX je ne sais plus.

Commentaire de oki972 le 15/12/2005 15:05:20

Frop01 dis moi...
J'ai utilisé ta barre de progression dans le meme contexte que ton exemple iniital avec la copie de fichier bit par bit.. super en local sous EASY PHP 1.8 mais une fois sur mon serveur distant (linux)... rien .. le fichier est crée mais il ne grossit pas. J'ai tenté un echo de la ligne $pp=fgets($fd); j'ai rien non plus... As tu une idée du probleme ?
Cordialement

Commentaire de PaTaTe le 21/12/2005 15:20:25

Cette progressbar est interessante.

L'exemple donné est la reception d'un fichier par le client venant du serveur mais comment faire pour avoir la meme chose quand un client envoie un fichier sur le serveur. Comme j'ai quelques difficultés en PHP, j'aimerais un peu d'aide sur ce point.

Merci

Commentaire de albert59 le 04/01/2006 14:39:27

PaTaTe,

Très bonne remarque d'ailleurs je me suis bien cassé les dents sur ce sujet.

Alors j'ai conçu un script qui n'affiche pas encore la progress bar, mais affiche le nombre de kb en cour d'upload ce qui est déjà pas mal.

Vous pouvez voir un exemple ici : http://www.net-heberge.com/progress_bar/test.html

Le script utilise une class php, un petit formulaire d'envoi et 2 fichier js pour le décomptage des kb déjà uploadé. Me reste à y intégrer une progress bar en js, mais le js et moi on es pas très copain encore

Commentaire de PaTaTe le 04/01/2006 16:04:51

Alberto59 ==|> J'ai été voir sur la page qur tu indique et je doit dire que ça ne mache pas. en dehors d'une succession d'erreur JS pas d'affichage de KB ... Cela dit j'aimerais bien voir le code ;)

Commentaire de albert59 le 04/01/2006 17:49:17

En effet je n'avais pas controler quelques modifications, désolé si quelqu'un veut bien tester avec que je balance la sauce merci

Commentaire de PaTaTe le 04/01/2006 19:07:02

toujours pareil ...

Commentaire de albert59 le 04/01/2006 19:57:31

bé désolé pour toi mais sa fonctionne chez bcp de personne

Commentaire de bouffard le 28/03/2006 19:47:33

Bonjour,

On retrouve ce code un peut partout sur certain site en php.
Donc celui-ci :
http://perso.wareteam.com/fonction_php_pour_afficher_une_progressbar_avec_pourcentage_encours_barre_de_progression.php

Alors qui copie sur qui ... En tout cas peut importe qui a fait le code c'est quand même bien.

Petite question que doit ton faire lorsqu'on doit charger plusieurs photos du serveur vers un client et qui sont référenciées dans une BD avec des renseignements utiles pour chacunes d'elles. Un peu comme une table d'usagers avec leurs photos "stoké" dans un répertoire.

Cordialement
__________________
Bouffard

Commentaire de frop01 le 28/03/2006 23:20:56

lol.

Si tu regardes la page d'accueil du site que tu viens de citer, il ya le message suivant :

"Bienvenue :o)
Vous êtes dans le site personnel de Cyberscorp connu aussi sous le nom de Frop01.
Vous y trouverez tout mes codes sources, scripts, Tutorials ...."

Et oui et oui, Ce site est mon site perso et j'ai développé ce script et je l'ai mis ici et là ;)

Et pour ta petite question :
tu veux dire quoi par charger plusieurs photos ? si c'est pour les afficher uniquement ya des scripts sur phpcs (recherche galerie photo) que tu peux en tirer quelques lignes.

Bonne continuation.

Commentaire de bouffard le 29/03/2006 15:46:37

Alors bravo,

Pour les photos, ce n'est pas une question d'affichage mais de chargement.
En utilisant ta progressbar dans ma boucle while qui lit ma BD je me suis rendu compte qu'elle se rendait à 100% une fois les notices affichées dans le page web, mais que les photos continuaient à ce charger dans la page. Donc je voie toutes mes notices avec leurs infos mais les images ne sont pas encore toutes chargées et afficher dans la page.

Ma question est comment faire pour utiliser ta progressbar dans le but de charger des notices et leurs photos (déposées dans un répertoire sur le serveur) sans avoir à utiliser d'autre code (javascript de préchargerment ou php)?

J'espère être assez clair.

Cordialement
_____________
Bouffard

Commentaire de phhav le 18/04/2006 07:54:58

Allo. Je dois faire une page de upload du genre yousendit..

J'essai d'introduire le code de la barre de progression mais je ne suis pas capable. Je ne suis pas un pro! je commence en programmation.

J'utilise cettec ommande... move_uploaded_file($_FILES['userfile']['tmp_name'], $uploadFile)
for ($i=0;$i<=100;$i++)
   {
   ProgressBar($i);
   }


mais comme je pex lire, cela ne fonctionne pas. Est ce que quelqu'un peut me donner l'exemple l epls basic possible d'une page avec la barre de progression integré. Je pourrais me debrouiller par la suite

Merci a tous!!

Commentaire de adrientaieb le 27/04/2006 00:31:58

Salut à tous, je suis en train de faire un site sur lequel on peut uploader des fichiers sur un serveur mais le soucis c'est que quand on envoi son fichier sur le serveur, il n'y pas de barre de progression indiquant que le fichier est bien en train d'être uploadé de mon disc vers le serveur.

Est-ce que quelqu'un pourrait me dire comment utiliser le code source proposé par frop01 dans cet exemple ?

A partir d'un formulaire sur index.php, on envoi un fichier sur fileupload.php

---------------------
code de index.php
---------------------
<h2>Transfert de fichier</h2>
<form enctype="multipart/form-data" action="fileupload.php" method="post">
Envoyer ce fichier : <br><br>
<input type="file" name="monfichier"><br><br>
Dans le dossier :<br><br>
<table><tr><td>
<input type=radio name="dossier" value="Photos">Photos<br>
<input type=radio name="dossier" value="Vidéos">Vidéos<br>
<input type=radio name="dossier" value="Code-sources">Code-sources<br>
</td><td>
<input type=radio name="dossier" value="Textes">Textes<br>
<input type=radio name="dossier" value="Autre">Autre<br>
<input type=radio name="dossier" value="Racine">Racine<br>
</td></tr></table>
<br><input type="submit">
</form>

---------------------
---------------------
code de fileupload.php
---------------------
<?php
if(isset($_REQUEST['dossier'])){
if($_REQUEST['dossier']!='Racine'){
$repertoireDestination = "repertoire/".$_REQUEST['dossier']."/";
}
else{
$repertoireDestination = "repertoire/";
}
}
else{
$repertoireDestination = "repertoire/";
}
    $nomDestination        = $_FILES["monfichier"]["name"];
$nomDestination = str_replace(" ", "_", $nomDestination);

$existe=false;
$real_dir = realpath($repertoireDestination);
$d=dir($real_dir);
while (false !== ($f = $d->read() ) ) {
if( $f == $nomDestination ) {
$existe=true;
}
}

    // Pour raison de sécurité nous ajouterons aux fichiers
    // portant une extension .php .php3, l'extension .txt
    if (eregi(".php", $nomDestination)) {
        $nomDestination .= ".txt";
    }
   if (is_uploaded_file($_FILES["monfichier"]["tmp_name"]) && $existe==false) {
        if (rename($_FILES["monfichier"]["tmp_name"],
                   $repertoireDestination.$nomDestination)) {
            echo "Tout s'est très bien passé ! Le fichier a bien été transféré.<br><br>";
chmod ($repertoireDestination.$nomDestination, 0755);
        } else {
            echo "Le transfert du fichier a échoué".
                 " vérifiez l'existence du répertoire ".$repertoireDestination;
       }          
    } else {
       echo "Le fichier n'a pas été uploadé : trop gros ou déjà existant sous ce nom";
    }
?>
------------------------------
------------------------------

Commentaire de hvella le 25/05/2006 17:58:31

@ frop01, merci pour ce code, sympa la bar.
Pour ma part elle met utile, mais je n'arrive pas a la placer dans une <table> les coordonées de ta barre sont absolues par rapport a la page ouverte.moi ma table est centrée du coup ca tombe pas au bon edroit.

c surement un probleme avec les div que je gere pas..

Voici l'exemple en gros
<?php

echo '
<table align=center>
<tr>
<td> telechargement</td></tr>
<tr><td>';
include ('progressbar.php');
Initialize(12,50,200,30,'#000000','#FFCC00','#006699');

ProgressBar(0);
//effectue une fonction
ProgressBar(50);
//effectue une fonction
ProgressBar(100);
//effectue une fonction
echo '</td></tr></table>';
?>

J'aimerai savoir comment ta barre peut rester dans le cadre défini ??
Merci d'avance ! A+

Commentaire de badconker2 le 07/06/2006 14:44:11

Super source ! Je battaillais depuis plusieurs jours pour avoir le même résultat avec des scripts cgi, alors que c'est beaucoup plus simple en php.

Pour répondre à adrien :
J'avais le même problème que toi et j'ai essayé de trouvé une solution :

(Par contre j'aime pas trop cette solution, si quelqu'un en a une meilleure je suis preneur :))

<form  action="fileupload.php" method="post">
Envoyer ce fichier : <br><br>
<input type="file" onchange="document.getElementById('idmonfichier').value=this.value"/>
<input type="hidden" name="monfichier" id="idmonfichier" /><br><br>
Dans le dossier :<br><br>
<table><tr><td>
<input type=radio name="dossier" value="Photos">Photos<br>
<input type=radio name="dossier" value="Vidéos">Vidéos<br>
<input type=radio name="dossier" value="Code-sources">Code-sources<br>
</td><td>
<input type=radio name="dossier" value="Textes">Textes<br>
<input type=radio name="dossier" value="Autre">Autre<br>
<input type=radio name="dossier" value="Racine">Racine<br>
</td></tr></table>
<br><input type="submit">
</form>

Ainsi avec ceci tu récupère le nom complet du fichier dans la variable $_POST['monfichier'].


Et après tu réutilise un des exemples de codes plus haut :

Initialize(0,0,200,30,'#000000','#5BB105','#516AA3'); // initialisation de la barre de progression

$fichier_distant = $_POST['monfichier']
echo $fichier_distant."<br />";
$fichier_local = $repASigner.basename($fichier_distant);
echo $fichier_local."<br />";
$fd = fopen($fichier_distant, 'rb');
if (!$fd) die('Impossible d\'ouvrir le fichier distant');
$fl = fopen($fichier_local, 'wb');
$long=filesize($fichier_distant);
echo $long."<br />";
$rapport=$long/100;
$m=0;
$i=1;
while (!feof($fd)) {
   $pp=fgets($fd);
   fputs($fl, $pp);
   $m=$m+strlen($pp);
   if ($m>$rapport) {
      $m=0;$i++;
      ProgressBar($i);
   }
}
fclose($fd);
fclose($fl);

Pour HVELLA :

essaie en essayant ça :
    function Initialize($gauche,$haut,$largeur,$hauteur,$bord_col,$txt_col,$bg_col)
   {
    $tailletxt=$hauteur-10;
    echo '<div id="progrbar" style="'; //+1
    echo ';width:0px';
    echo ';height:'.$hauteur.'px';
    echo ';background-color:'.$bg_col.';z-index:0;">';

    echo '<div id="pourcentage" style="';
    echo ';width:'.($largeur-1).'px';

    echo ';height:'.($hauteur-1).'px;border:1px solid '.$bord_col.';font-family:Tahoma;font-weight:bold';
    echo ';font-size:'.$tailletxt.'px;color:'.$txt_col.';z-index:1;text-align:center;">0%</div>';
  
  
  
    echo'</div>';
  
   }
  



Commentaire de badconker2 le 07/06/2006 14:58:17

arf, j'ai oublié de dire que j'avais un autre soucis : impossible d'arreter manuellement l'upload, même en appuyant sur le bouton arrêter du navigateur, l'upload continue.

Quelqu'un aurait une solution ?

Commentaire de adrientaieb le 08/06/2006 18:33:28

Merci d'avoir pris le temps de lire mon code et de m'avoir répondu.
Je vais tester ça sur mon site et je te tien au courant. j'espère que ça va marcher.
Bye.

Commentaire de badconker2 le 12/06/2006 13:06:38

bon bah en faite ma solution marche très bien en local avec easy-php mais pas du tout sur un serveur distant qui n'arrive pas à ouvrir le fichier. Ce doit être un problème de droit. Je n'ai pas de solution pour le moment. :(

Commentaire de stef1589 le 02/09/2006 15:06:53

est ce qu il serait possible de l inclure dans un upload ?
je suis tres debutant. Pouvez vous me donner un exemple

Commentaire de zamooo le 18/04/2007 13:17:58

vraiment bien ton code; simple et efficace.
Je l'utilise pour faire un retour utilisateur sur des insertions postgres énormes!!
10/10

Commentaire de alakhnor le 05/05/2007 20:43:25

Ce serait parfait si cela faisait un reset du timeout. Rien de prévu ? ^^

Commentaire de furthsnake le 26/06/2007 12:16:20

Une des meilleurs sources que j'ai trouvé sur le net... Chapeau

Par contre, comment l'adapter à un formulaire d'upload (move_uploaded_file) ???

Commentaire de vincseize le 17/07/2007 01:48:39

Et moi qui me bat avec des tableau multidimensionnel ....

enfin un script, copier coller, et cela marche ds la seconde ....

Merci Merci , Merci

Commentaire de _toutfou le 02/11/2007 12:27:54

Salut l'amis,

un grand merci pour ce petit bout de code, qui me sert grandement dans mon aplication.

En plus ca marche du premier coup !!

Merci encore.

Seb

Commentaire de snk007 le 18/11/2007 22:27:52

slt je voudrai intégré la progressbar a mon site d'upload de fichier (pc->serveur(free.fr)).
alors voici mon code php : http://up4turkiller3.free.fr/site.txt
sur ce fichier texte se trouve le code exacte que j'utilise actuellement,
Il y a 2 fichier : index.php, upload.php3
ce code ne viens pas de moi j'ai juste fait en sorte que l'utilisateur choisise le dossier d'upload.
merci de m'aider a bientot

Commentaire de mathemitec le 07/06/2008 00:04:50 8/10

Merci, voila !

Commentaire de jeepibmx le 04/07/2008 20:29:28 10/10

Bonjour, je vous écris à propos de la barre de progression que vous avez développez. J'aurais une ou deux petites questions. J'essaie d'envoyer un très petit fichier (2899bytes) et la barre stop à 63%. Si j'augmente la taille du fichier, tout fonctionne #1. Avez-vous une solution à me proposer?  Merci beaucoup !

Commentaire de Sinik2008 le 07/11/2008 19:03:04

Salut frop01, juste pour te féliciter et t'encourager. c'est tout benef ce script. a chacun de l'adapter à son contexte. encore merci

Commentaire de Ultimata le 06/02/2009 01:33:03

Merci pour ce script très simple et plutot... Génial :D

J'ai une question, je souhaite ajouté une ptite fonction permetant de décrire l'action en cours (par exemple, 1) Injection SQL, 2) Création des config, 3) ..., et que sa affiche cette tache en cours (ce qui donnerais encore plus de dynamisme :D)

Commentaire de ishsarfat le 24/03/2009 00:13:34

Bonjour,

Ce code m'a l'air de très bonne facture, cependant j'obtiens une erreur:

Warning: fopen(c:/writeFR.swf) [function.fopen]: failed to open stream: No such file or directory in test.php on line 15

La commande du script est celle-ci:

  $fichier_local = 'c:/'.basename($fichier_distant);

La barre de progression fonctionne bien, mais elle se bloque à 94%.

Quelqu'un aurait il une solution ? Merci d'avance

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

barre de progression pendant l'upload [ par Linuss ] Bonjour &#224; tous, Alors voil&#224;, j'aimerai savoir comment faire ou s'il existe un script pour afficher une barre de progression pendant un uploa Barre de progression [ par nicolas66 ] Salut tlm,Je voulais savoir s'il était possible de faire apparaitre une barre de progression d'un téléchargement lors d'un envoi vers un serveur ftp ( Barre de progression upload fichier SIMPLE [ par pukekey ] Bonjour, Voila vous allez surement me dire que je suis un boulet mais je me lance : J'ai chercher pendant des heures un moyen de faire une barre de Barre de progression pour un upload de fichier [ par SeanyJ ] Bonjour, Alors voila je vais vous expliquer mon problème. J'ai créer un formulaire en PHP permettant l'envoi de gros fichier sur mon serveur (jusqu'a douchette en querty [ par matamin ] Salut.. J'ai une douchette ( lecteur de code bar) dont je voudrai copier le contenu de code bar vers ma base de donnée mysql, le problème c'est que la lecture d'un code barre [ par totonyou2007 ] je cherche un application php que fait la lecteur d'un code barre par un lecteur de code barre Générer code barre 2D PDF417 [ par moumoune11 ] Bonjour. je suis en licence proffessionnelle Traitement des données et internet. je dois réaliser un projet tutoré qui consiste à générer un code barr remplacer un bouton par un code barre [ par astro20 ] Bonjour,je vous explique, je suis entrain de réaliser un suivi de pièces mais on a pas le droit d'utiliser le clavier. on doit zapper un code barre po Barre de defile [ par Breizhoo ] J'aimerais savoir comment changer la couleur de la barre de defilement Comment faire pour avoir les barre pour monter et descendre de couleur [ par arnaud ] Comment faire pour avoir les barre pour monter et descendre de couleurmerci


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,671 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales