Avatar billede augustjoergensen Nybegynder
02. november 2004 - 17:50 Der er 10 kommentarer

Hvordan får man de bytes sent fra en form som vidersender filer?

Til et billedearkiv jeg laver, har jeg en et upload script, hvor "brugeren" Kan uploade billeder.

Men problemer opstår i at disse filer nogle gange kan være store og jeg vil gerne vise "brugeren" hvormeget som han/hun har sendt.

Derfor tænkte jeg på at javascript kan få fat på antal bytes sendt fra <form> men jeg har ikke kunne finde noget.

Altså specifike skal jeg på en eller anden måde, fx hvert sekund få afvide hvor meget "brugeren" har sendt af den fil som <form> sender!
Avatar billede olebole Juniormester
02. november 2004 - 18:40 #1
<ole>

Det har du ingen muligheder for at aflæse. Du kan få at vide, hvornår uploaden er færdig ... that's it 'n' that's that  :)

/mvh
</bole>
Avatar billede augustjoergensen Nybegynder
02. november 2004 - 21:01 #2
Du kan læse størrelsen på et billede vha.

    im = new Image();
    im.src = document.Upload.submitfile.value;
   
    alert(im.width);
    alert(im.height);
    alert(im.fileSize);

Men jeg skal have filstørrelsen som sender....

Jeg ved man kan lave et system, hvor man kan vise brugeren hvor meget af filen som er sendt fra en form!, altså fx en graf, som viser hvor mange procent man er færdig. Jeg ved så ikke om dette er lavet med javascript!, men hvis i ved hvad det er lavet med tell me
Avatar billede augustjoergensen Nybegynder
02. november 2004 - 21:01 #3
Altså, fx et system som det fileplanet bruger, men det skal virke ud fra et form tag.
Avatar billede olebole Juniormester
03. november 2004 - 23:00 #4
Du kan _ikke_ aflæse, hvormange bytes, der er sendt med en form. Hvad du evt. tror, man kan lave, ved jeg ikke - men jeg ved, hvad man i den forbindelse kan lave med JavaScript og man _kan_ ikke lave det, du skriver om.

Det eneste, du kan gøre, er at lave en animeret gif - eller et animeret lag ... men det kan ikke vise, hvormange bytes, der er uploaded. Det er umuligt  :)
/mvh
Avatar billede olebole Juniormester
03. november 2004 - 23:02 #5
PS: Du kan lave noget med en ActiveX komponent, som brugeren har installeret, men du har ingen muligheder i HTML/CSS/JavaScript/JScript/VBscript
Avatar billede augustjoergensen Nybegynder
05. november 2004 - 17:54 #6
Jeg fandt en metode, som ikker er optimal....

Men den fungerer ved at et PHP script læser hvor stor filen er på serveren = hvert sekund kan brugeren se hvor meget han har uploaded... folkens det kan lade sig gøre på en eller anden måde!
Avatar billede olebole Juniormester
05. november 2004 - 18:09 #7
Nej, det kan du ikke, for du kan ikke få noget returneret fra serveren, før filen er færdig-uploaded.
Det er fint, du er sikker i din tro - og der er da også millioner, der ligger og venter på dig. Der sidder nemlig en hel verden og venter på, du løser dit problem - for ingen har endnu løst det med de teknologier, der er til stede i øjeblikket  :)

Derfor ser du heller ikke nogen steder på nettet, hvor du har en bar, der viser den reelle upload-status ved HTTP-uploads. Du kan gøre det med FTP - men ikke med HTTP.
Avatar billede augustjoergensen Nybegynder
07. november 2004 - 20:42 #8
Ole jeg har lavet det på denne metode:
Men den fungerer ved at et PHP script læser hvor stor filen er på serveren = hvert sekund kan brugeren se hvor meget han har uploaded... folkens det kan lade sig gøre på en eller anden måde!


og det virker men ikke optimalt

Men på den anden site jeg fandt virkede det bedre det kan lede sig gøre ;) dig som ser for snævert ;
Avatar billede olebole Juniormester
07. november 2004 - 23:38 #9
Nej, det er mig, der ser det fra en professionel vinkel. Du finder ikke den programmør, der ved, hvad han har med at gøre, der kunne finde på at rette en HTTP-request til serveren hvert sekund for at kunne lave en progressbar. Det er en himmelråbende ineffektiv og elendig løsning ... no offence  :)

På den anden side, kan jeg godt huske, da jeg selv var helt grøn i faget og ikke ville acceptere, hvad fagkundskaben kunne og sagde. Jeg vidste selv bedre og var så allerhelvedes dygtig, at jeg kunne undvære hovedet.
Nu, hvor jeg selv hører til dem, der 'ikke vidste en skid', kan jeg kun grine ad mig selv - og kan godt se, det ikke havde betydet så meget, om jeg havde måtte undvære hovedet  ;D
/mvh
Avatar billede augustjoergensen Nybegynder
08. november 2004 - 19:36 #10
Fræ kommentar olebole ;)

Jeg ved godt at det er en zoke løsning? men er det ikke bedre end at brugeren ser

"FILEN BLIVER NU UPLOADEDE VENT VENLIGST MENS DER BIVER KOPIERET 20mb"
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester