nuno_couto Posted June 18, 2006 at 09:24 PM Report #33652 Posted June 18, 2006 at 09:24 PM Boas... Tenho um sistema de upload com form html e script em php. Os uploads funcionam bem mas num ficheiro grande, o browser fica "parado" enquanto o ficheiro é enviado. Era interessante colocar uma barra de progresso, mas não sei em que linguagem pode ser, para se integrar com o PHP. Já vi algumas coisas mas tudo feito em PERL e a exigir "instalação" no servidor. Suponho que seja possível fazer isso com algum script introduzido ou no php ou no html que contem o form. Obrigado. Fiquem bem. portalmundial.net »» criamos sites
Guest id194 Posted June 18, 2006 at 09:41 PM Report #33655 Posted June 18, 2006 at 09:41 PM isso com php axo k n da pa fazer, pk tu com php, apenas processas o k foi submetido depois de o ficheiro ter sido enviado para o servidor e não duarnte, logo não tens maneira de verificar quantos bytes do ficheiro já foram enviados... penso eu que não dá. pode é dar com javascript, se javascript suportar envio de ficheiros, se calhar por ai dá pa fazeres a tal barra de progresso... ou então uma outra possiblidade é colocares no browser mal o utilizador pressione o botão de submeter, avisares de alguma forma que o processo pode demorar e podes colocar um gif animado que se repita so pa o utilizador ter a noção de que o browser está a fazer alguma coisa...
perdido_e_sozinho Posted June 18, 2006 at 10:04 PM Report #33666 Posted June 18, 2006 at 10:04 PM isso com php axo k n da pa fazer, pk tu com php, apenas processas o k foi submetido depois de o ficheiro ter sido enviado para o servidor e não duarnte, logo não tens maneira de verificar quantos bytes do ficheiro já foram enviados... penso eu que não dá. O box.net parece já ter esse sistema, mas não sei ao certo como se faz. Tenta procurar no Hotscripts.com
Ped@ntilva Posted June 18, 2006 at 10:28 PM Report #33674 Posted June 18, 2006 at 10:28 PM Com php não acho ser possivel. Mas já ouvi falar num script em JSP. Mas nem todos os servidores suportam JSP como PHP. Boa sorte...
nuno_couto Posted June 19, 2006 at 12:26 AM Author Report #33706 Posted June 19, 2006 at 12:26 AM Teria lógica em java, mas eu nao percebo nada. O java iria "substituir" o form em html e iria fazer a barra de progresso em função dos dados enviados / tamanho total. Se alguem souber ajudar... portalmundial.net »» criamos sites
Guest id194 Posted June 19, 2006 at 12:36 AM Report #33707 Posted June 19, 2006 at 12:36 AM atenção que eu falei em javascript e não java são coisas bem distintas... @perdido_e_sozinho é bem possivel que o box.net não esteja a usar php. não sou nenhum guru de php nem lá perto ando, mas pelos conhecimentos que tenho, sinceramente não estou a ver como é que isso será possível com php... da maneira que o php funciona, simplesmente não estou a ver... apenas com php, não creio ser possível... ----------------- EDIT -------------------- Após umas buscas no google encontrei algo... Sabendo programar noutras linguagens e tendo suporte para elas, usando ASP, é fácil. Perl, pode não ser tão fácil mas também não é dificil. Em javascript não encontrei nada mas não me parece ser possível também. E com PHP é definitivamente impossível pois o PHP não permite acesso a certas informações do envio do ficheiro. Para se criar uma barra desse genero, precisamos de saber o tamanho do ficheiro e quanto é que já foi enviado, tal informação é impossivel de obter com PHP. Se possuires Perl no teu servidor, encontrei um script para PHP que te faz isso. Aquilo básicamente usa um outro script em perl para a barra de progresso, mas assim que o ficheiro tiver sido totalmente enviado, já é processado por php. Demo: http://www.raditha.com/php/upload.php Página: http://www.raditha.com/php/progress.php
nuno_couto Posted June 19, 2006 at 12:47 AM Author Report #33710 Posted June 19, 2006 at 12:47 AM tambem acho q não porque o php, quando "actua" já recebeu o ficheiro por upload... a barra de progresso tem que surgir antes... deve ser qualquer coisa relacionada com javascript ou java... nao sei portalmundial.net »» criamos sites
Guest id194 Posted June 19, 2006 at 12:51 AM Report #33711 Posted June 19, 2006 at 12:51 AM lê o meu post anterior, acabei de o editar... de facto, isso também daria para fazer se o PHP fornecesse mais informações do envio do ficheiro, porque pela demo desse script que postei ai em cima, vocês reparam que a página com a barra está sempre a fazer um refresh, logo se o PHP fornecesse o total de bytes enviados para o sistema, também era possivel fazer com PHP dessa mesma forma. mas lá esta, o PHP não fornecesse esse dado.
Dabubble Posted June 19, 2006 at 09:26 AM Report #33739 Posted June 19, 2006 at 09:26 AM isso e feito normalmente com DHTML e AJAX, da trabalho mas da para fazer...
nuno_couto Posted June 20, 2006 at 06:57 PM Author Report #33969 Posted June 20, 2006 at 06:57 PM Sobre este assunto criei um novo post na secção de JAVA (encontrei um java applet com barra de progresso mas não consigo pôr a trabalhar). http://www.portugal-a-programar.pt/index.php?showtopic=3190 Se alguem souber ajudar, o meu Obrigado. portalmundial.net »» criamos sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now