2010-12-15 51 views
1

Je télécharge un fichier sur mon site Web. Ça fonctionne bien. Maintenant, je veux afficher la barre de progression pendant que le téléchargement prend du temps. J'ai l'option de chenge de téléchargement par ajax, mais je ne peux pas utiliser ajax. Peut-on montrer sans utiliser ajax et sans déranger le code.barre de progression lors du téléchargement de l'image sans ajax dans php

$image = new SimpleImage(); 
$objdjs= new Djs; 
if(isset($_POST['btnprofile'])) 
{ 

if($_FILES['profilegallery']['name']!=""){ 
$res1 = $objdjs->upload_file($_FILES['profilegallery'],PATH_PROFILE_IMAGE); 
$image->load(PATH_PROFILE_IMAGE.$res1); 
     $image->resize(46,36); 
     $image->save(PATH_PROFILE_IMAGE."thumb_".$res1); 

$title=trim($_POST['title1']); 
$ins = $objdjs->insertprofile($uid,$title,$res1); 
$messageProfile="<span style='color:#336600'>Image has been added in profile gallery</span>"; 
echo "<script>window.location='listprofilegallery.php?ms=true';</script>"; 

toute aide sera appricated Merci

Répondre

0

Je pense que ce que votre demande est fondamentalement impossible, lorsque votre utilisateur soumettrait le formulaire que vous seriez coincé. Puis seule façon de créer une barre de progression de téléchargement est

  • javascript/ajax
  • Flash
  • applet java
0

La solution très laid mais rapide est de mettre un iframe qui se rafraîchit .

Pourquoi ne pas utiliser Ajax?

0

Vous parlez de ne pas changer le code (beaucoup), donc je pense que l'option la plus simple est (eugh) un uploader flash. Quand vous dites "mais je ne peux pas utiliser AJAX", je suppose que vous voulez dire "je ne sais pas encore comment l'utiliser". Dans ce cas, je recommanderais jQUery and AJAX. Vous n'avez toujours pas de barre de progression (malheureusement), mais cela vous aidera à apprendre AJAX.

1

Vous pouvez essayer SWFUpload, il y a une barre de progression personnalisable, mais cela ne fonctionne qu'avec le flash. Il y a aussi un plugin jQuery appelé uploadify

0

Ce que vous voulez faire est impossible avec PHP seulement. PHP est un langage côté serveur qui ne peut pas affecter directement la page une fois qu'elle a été servie au navigateur. Vous auriez besoin de Javascript pour le faire, AJAX vraiment.

Il y a deux bonnes options:

  1. utilisation swf
  2. utiliser AJAX