2010-04-21 4 views
1

J'ai un formulaire de téléchargement, quand vous cliquez sur Envoyer envoyer le fichier à mon serveur, mais il faut un certain temps, en attendant je dois dire à l'utilisateur d'attendre afin d'obtenir le fichier téléchargé, car il peut appuyer à nouveau sur Envoyer parce qu'il n'y a pas de mensonge pour l'empêcher. Ainsi, l'utilisateur remplit quelques champs du formulaire, y compris un fichier. Quand il Envoyer le formulaire envoie les variables via POST à ​​la même page:Afficher un "Message en attente" avant le formulaire POST envoyer

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" enctype="multipart/form-data" method="post"> 

Un script php détecter la page maintenant des variables POST a faire quelque chose. Dans le temps entre l'action d'envoi et le rechargement de la page j'ai besoin d'afficher un mensage, comment puis-je faire ça ??? Merci


Ce sera bien si vous maintenant comment déclencher cela avec colorbox. Je sais comment l'utiliser à partir d'un lien mais non à partir de cette action POST.

Répondre

1
<script type="text/javascript"> 
    function onSubmit() { 
     // do something, maybe you would want to disable the submit button too 
    } 
</script> 
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" 
     enctype="multipart/form-data" 
     method="post" 
     onsubmit="onSubmit()"> 

MISE À JOUR: Il suffit de remarquer que vous utilisez jQuery. Vous pouvez ajouter le bloc de script suivant à la place:

<script type="text/javascript"> 
    $(function() { 
     $('form').submit(function() { 
      $(':submit').attr('disabled', 'disabled'); 
      // trigger the colorbox thing here 
     }); 
    }); 
</script> 
+0

ajoutant le « onsubmit = » onSubmit() » trop – DomingoSL

+0

@DomingoSL:. Pas besoin Le premier bloc de code et le second sont censés être deux solutions distinctes différentes cela ne dépend pas l'un de l'autre. – Amry

1

Je ne suis pas sûr de la boîte de couleur. Mais vous pouvez simplement écrire un peu de JavaScript pour afficher un message lorsque le formulaire est soumis.

Vous pouvez également désactiver le bouton d'envoi lorsque le formulaire est soumis pour empêcher l'utilisateur de cliquer à nouveau en utilisant JavaScript pour définir onclick à "this.disabled=true"

Questions connexes