loader pendant upload de video

Eléphant du PHP | 199 Messages

10 janv. 2007, 03:41

bonjour,

je cherche a faire un loader pendant l'upload d'une video, le probleme c'est que ma video est uploader par un formulaire.
Donc le loader doit etre actif a partir du moment de l'envoi du formulaire, jusqu'au chargement de la page suivante.

J'ai essayé plusieurs loader en javascript, mais les loaders se mettaient en marche au chargement de la page c'est a dir une fois l'upload de la video terminé... donc en gros ils ne servaient a rien...

Est ce qu'il y a quelqu'un qui a deja eu ce probleme, ou qui saurait sur quoi m'orienter ?

merci d'avance

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

10 janv. 2007, 11:55

Je ne suis pas sur d'avoir bien saisi.... c'est quoi un "loader" pour toi ? un message d'attente le temps que la page suivante se charge ?

Pourquoi ne pas juste modifier l'appel à ton script en le retirant du onLoad de la page (où de tout autre endroit où il peut bien se trouver) et en le plaçant dans le onSubmit du formulaire ? (ou directement dans le javascript si tu soumets ton formulaire via un .submit())
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 199 Messages

10 janv. 2007, 12:18

Salut

oui pour moi le loader c un message d'attente avec une petite anim ou autre...

Mon formulaire c'est un formaulaire html classic.

c'est vrai que j'y ai pensé hier soir, a faire lancer le loader sur le onclik qui soumet le formulaire. le probleme c'est que je suis pas du tout un boss de javascript et je ne saurai surement pas modifié le loader pour qu'il sactive depuis le onclik...

Eléphant du PHP | 199 Messages

10 janv. 2007, 12:26

j'ai ca pour le loader javascript
<!-- DEBUT DU SCRIPT -->
<STYLE TYPE="text/css">
<!--   
#cache {
    position:absolute; top:200px; z-index:10; visibility:hidden;
}
-->
</STYLE>
<DIV ID="cache"><TABLE WIDTH=400 BGCOLOR=#000000 BORDER=0 CELLPADDING=2 CELLSPACING=0><TR><TD ALIGN=center VALIGN=middle><TABLE WIDTH=100% BGCOLOR=#000000 BORDER=0 CELLPADDING=0 CELLSPACING=0><TR><TD ALIGN=center VALIGN=middle><FONT FACE="Verdana" SIZE=4 COLOR=#000000><BR>patientez<BR><BR></FONT></TD>  </TR></TABLE></TD>  </TR></TABLE></DIV>

<SCRIPT LANGUAGE="JavaScript">

var nava = (document.layers);
var dom = (document.getElementById);
var iex = (document.all);
if (nava) { cach = document.cache }
else if (dom) { cach = document.getElementById("cache").style }
else if (iex) { cach = cache.style }
largeur = screen.width;
cach.left = Math.round((largeur/2)-200);
cach.visibility = "visible";

function cacheOff()
	{
	cach.visibility = "hidden";
	}
window.onload = cacheOff
</SCRIPT>
<!-- FIN DU SCRIPT -->
et pour mon formulaire le bouton c'est ca
<input type="submit" value="Valider" />

Eléphant du PHP | 199 Messages

10 janv. 2007, 13:53

J'ai fait ca :
<!-- DEBUT DU SCRIPT -->
<STYLE TYPE="text/css">
<!--   
#cache {
    position:absolute; top:200px; z-index:10; visibility:hidden;
}
-->
</STYLE>
<DIV ID="cache"><TABLE WIDTH=400 BGCOLOR=#000000 BORDER=0 CELLPADDING=2 CELLSPACING=0><TR><TD ALIGN=center VALIGN=middle><TABLE WIDTH=100% BGCOLOR=#000000 BORDER=0 CELLPADDING=0 CELLSPACING=0><TR><TD ALIGN=center VALIGN=middle><FONT FACE="Verdana" SIZE=4 COLOR=#000000><BR>patientez<BR><BR></FONT></TD>  </TR></TABLE></TD>  </TR></TABLE></DIV>

<SCRIPT LANGUAGE="JavaScript">

var nava = (document.layers);
var dom = (document.getElementById);
var iex = (document.all);
if (nava) { cach = document.cache }
else if (dom) { cach = document.getElementById("cache").style }
else if (iex) { cach = cache.style }
largeur = screen.width;
cach.left = Math.round((largeur/2)-200);
cach.visibility = "hidden";

function cacheOff()
    {
    cach.visibility = "visible";
    }
 
</SCRIPT>
<!-- FIN DU SCRIPT -->
<input type="submit" value="Valider" onclick="function cacheOff()" />
mais quand je clik rien n'aparait... quelqu'un a une idée?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

10 janv. 2007, 14:05

Il ne faut pas que tu mettes le mot clé function lorsque tu l'appelle, juste le nom et éventuellement les paramètres :

Code : Tout sélectionner

<input type="submit" value="Valider" onclick="cacheOff();" />
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 199 Messages

10 janv. 2007, 14:11

Ca marche superbe merci

Eléphant du PHP | 199 Messages

10 janv. 2007, 16:09

J'ai encore un petit souci

dans mon code je place un div avec du css

#cache {
    position:absolute; top:200px; z-index:10; visibility:hidden;
} 
je n'arrive pas a le placer ou je veut sur horizontalement...

j'ai essayé de rajouter left:200px; mais ca ne change rien...

quelqu'un peut m'aider?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

10 janv. 2007, 18:03

C'est parce que ton script le repositionne au centre de la page :

Code : Tout sélectionner

cach.left = Math.round((largeur/2)-200);
Commente cette ligne et ton "left:200px;" devrait être pris en compte :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphant du PHP | 199 Messages

10 janv. 2007, 18:51

nikel merci !