Programmation » Please wait...
Catégorie:  
   
Please wait...
Publié le 20/11/2006 @ 16:04:21,
Par etik
Et bien voula, j'ai un ptit probleme avec une page web en PHP qui est assez longue a chargee.

PHP + un tas de query Oracle :eek:

Je voudrai afficher un message "please wait" a mon user pour qu'il ne tape pas refresh 200x(exposant infini)

Donc avec 2 DIV ca devrais le faire... ou pas... et la c'est plutot pas.

Dans ma page principale

  1. <blablabla
  2. <body class=button onload=hidePreloadPage()> 
  3. <blablabla
  4. <div id=prepage style=visibility:visible;display:inline
  5. <img id=waitimage src=Graphics/loading.gif>Loading... Please wait... 
  6. </div
  7. <div id=mainpage style=visibility:hidden;display:none> 
  8. <Le truc de la page super mega long a chargermais qui ne prend que 16secmais que c'est quand meme trop long pour l'utilisateur qui reload la page comme un fou :kiki:  >


et deux functions (copy/paste du net) pas encore tout compris :grin: suis pas developpeur moi :petrus:

  1. function hidePreloadPage() { 
  2. if (document.getElementById){ 
  3. document.getElementById('prepage').style.visibility='hidden'
  4. document.getElementById('prepage').style.display='none';  
  5. document.getElementById('mainpage').style.visibility='visible'
  6. document.getElementById('mainpage').style.display='inline'
  7. else { 
  8. if (document.layers){ 
  9. document.prepage.visibility = 'hidden'
  10. document.getElementById('prepage').style.display='none';  
  11. document.getElementById('mainpage').style.visibility='visible'
  12. document.getElementById('mainpage').style.display='inline'
  13. else { 
  14. document.all.prepage.style.visibility='hidden'
  15. document.getElementById('prepage').style.display='none';  
  16. document.getElementById('mainpage').style.visibility='visible'
  17. document.getElementById('mainpage').style.display='inline'
  18. function showPreloadPage() { 
  19. if (document.getElementById){ 
  20. document.getElementById('prepage').style.visibility='visible'
  21. document.getElementById('prepage').style.display= 'inline'
  22. document.getElementById('mainpage').style.visibility='hidden'
  23. document.getElementById('mainpage').style.display= 'none';  
  24. else { 
  25. if (document.layers){ 
  26. document.prepage.visibility = 'visible'
  27. document.getElementById('prepage').style.display= 'inline'
  28. document.getElementById('mainpage').style.visibility='hidden'
  29. document.getElementById('mainpage').style.display= 'none';  
  30. else { 
  31. document.all.prepage.style.visibility = 'visible'
  32. document.getElementById('prepage').style.display= 'inline'
  33. document.getElementById('mainpage').style.visibility='hidden'
  34. document.getElementById('mainpage').style.display= 'none';  
  35. setTimeout('document.images["waitimage"].src = "Graphics/loading.gif"'200);  
  36. }


Mon probleme est que je n'arrive pas a lancer la function showPreloadPage() au moment ou la page charge.

Un idee ? ou je change mes users :banzai:

Merci !!

Dernière édition: 20/11/2006 @ 16:21:48
   
Please wait...
Publié le 20/11/2006 @ 16:58:55,
Par rfr
:chut:

Dernière édition: 20/11/2006 @ 17:00:22
To die is a time consuming activity, it often takes a lifetime (but some are faster than others ... though)
   
Please wait...
Publié le 20/11/2006 @ 18:15:14,
Par etik
recherche keylogger.
Si + de 3fois refresh en moins de 5sec -> install une batterie sony :banzai:
   
Please wait...
Publié le 20/11/2006 @ 18:21:26,
Par zion
pourquoi tu règles pas le problème de page longue à charger plutôt que de vouloir afficher un truc à l'utilisateur? Cela me paraît de loin plus logique :petrus:
Je suis le Roy :ocube:
   
Please wait...
Publié le 20/11/2006 @ 18:37:07,
Par Altar
En même temps si le code doit parser une bdd de 160go, tu peux essayer d'optimiser comme tu veux mais ça ne résoudera jamais ton problème :tinostar:
   
Please wait...
Publié le 20/11/2006 @ 18:38:42,
Par zion
J'ai un doute ici :itm:
Je suis le Roy :ocube:
   
Please wait...
Publié le 20/11/2006 @ 20:27:47,
Par etik
Malheureusement c'est pas mon trip la programmation, suis dba pas programmeur et surtout pas en php :petrus:
Donc au niveau des requetes sql, elles sont nikel :wink:
Le code php par contre... euh... mais bon le truc est quand meme enorme, donc ca me parait pas mal 10 a 15sec pour avoir la page. J'ai pas ecris ce truc, mais je reprend la main. restriction de personnel toussa... :angry:
Au gros, c'est du monitoring et ca verifie des infos db par db... plus de 200 a travers l'europe. 15sec moi je trouve ca top.
   
Please wait...
Publié le 20/11/2006 @ 20:34:41,
Par zion
Ok :oh:

Benh alors pourquoi ne pas utiliser une page avec une iframe dans laquelle tu bosses, cachée en dehors de ton écran à la limite et qui se remet dans ton div à partir du moment ou elle a terminé? Au moins cela évitera que le mec recharge la page 50 fois vu que ta première page sera bien terminée et affichée et en gros en rouge "TU RELOADES PAS :kiki: " :petrus:

My 2 cents :oh:
Je suis le Roy :ocube:
   
Please wait...
Publié le 20/11/2006 @ 20:39:43,
Par gizmo
AJAX :oh:
La page s'affiche, elle lance automatiquement la requete en background, avec un message d'attente. Quand la requete est finie, le resultat est reçu et remplace le message. Avec un toolkit comme Mochikit ou Dojo, c'est l'histoire d'une trentaine de lignes de code.
Concept vivant.
   
Please wait...
Publié le 20/11/2006 @ 21:27:40,
Par etik
J'adore l'idee du "TU RELOAD PAS OU JE MORDS" en lieu et place du "PLEASE WAIT" :lol:
je "google" des demain sur Mochikit, Dojo et AJAX.

J'entends bcp parler d'AJAX mais je n'ai jamais rien lu dessus. Un site de reference ?

Merci pour vos conseils !!
   
Please wait...
Publié le 20/11/2006 @ 23:29:31,
Par ovh
http://ajax.developpez.com :petrus:

:neowen:
Je n'ai rien à voir avec www.ovh.com
   
Please wait...
Publié le 21/11/2006 @ 00:01:20,
Par etik
Cool, un chapitre AJAX beginner sympa "III-B. Attendre c'est bien, le savoir c'est mieux !"

J'casse essaye tout ca... :alarmclock2:
Répondre - Catégorie:  
Informaticien.be - © 2002-2024 AkretioSPRL  - Generated via Kelare
The Akretio Network: Akretio - Freedelity - KelCommerce - Votre publicité sur informaticien.be ?