Avatar billede fizk Nybegynder
30. marts 2005 - 01:37 Der er 13 kommentarer

Hvor meget har man uploadet?

Folkens ... Jeg er igang med at lave en ny side (ok, den har kørt lidt tid nu), hvor man skal kunne hente gamle spil.
For at gøre det lidt lettere for mig selv, har jeg lavet et upload script, der fylder i database og lægger billeder, samt andre filer de steder de skal være.

MEN! Når jeg trykker upload, står maskinen bare og tænker mens den gør det. Kan det på en eller anden måde lade sig gøre at lave det lidt smart, så den efterhånden som filerne bliver uploadet skriver "60 kb upload" ... "100 kb uploaded" etc. etc., så man har lidt fornemmelse for at den rent faktisk laver noget?

Jeg ved godt php ikke kan ændre dynamisk på en side, på samme måde som f.eks. javascrips, så jeg tænkte på noget med en iframe der blev opdateret engang i mellem, men problemet ligger nok mest i om man kan teste filstørreslen på temp-filen?

Jeg er yderst åben for forslag, så bare fyr løs, hvis derer nogen der ligger inde med en god ide!!!
Avatar billede bromer Nybegynder
30. marts 2005 - 01:42 #1
Hvordan ved du, hvilken tmp webserveren skriver filen til? Så vidt jeg kan regne ud ved du først det efter filen er uploaded.
Avatar billede net-base.dk Nybegynder
30. marts 2005 - 01:44 #2
Her lytter jeg lige med... for kunne godt bruge det samme til et site jeg har lavet...

Har desværre ikke nogen ide om hvordan det skal laves...
Avatar billede alister_crowley Nybegynder
30. marts 2005 - 01:48 #3
$_FILES['userfile']['size']

    The size, in bytes, of the uploaded file.

http://se.php.net/features.file-upload
Avatar billede bromer Nybegynder
30. marts 2005 - 01:49 #4
Hvor meget kontrol har du over din server? Det vil jo være muligt at flytte på den TCP kanal, hvori filen bliver udvekslet, men det er nok at skyde rimelig meget over målet :)
Avatar billede alister_crowley Nybegynder
30. marts 2005 - 01:49 #5
Men at lave sådan noget fancy javascript noget, er nok rimeligt umuligt, da det afhænger af burgere og servens hastighed, hvilket gør det meget komplext at designe noget til.
Avatar billede bromer Nybegynder
30. marts 2005 - 01:50 #6
alister_crowlet: Jeg tror lige du er lidt hurtig her. Spørgsmålet går på at få denne information _mens_ filen bliver uploaded til webserveren. $_FILES arrayet har du jo først når filen rent faktisk er blevet uploaded.
Avatar billede alister_crowley Nybegynder
30. marts 2005 - 01:54 #7
ja, det havde jeg forstået, men $_FILES['userfile']['size'] er den eneste måde at aflæse det på , hvis der benyttes $_FILES[] til upload :)

Ellers kan FTP anbefales www.php.net/ftp , det kunne måske give det mere specifikt.
Avatar billede bromer Nybegynder
30. marts 2005 - 01:56 #8
Det er da ikke rigtigt. Hvis man vil måde hvor langt man rent faktisk er nået i overførslen kan man ikke bruge $_FILES til noget som helst.
Avatar billede alister_crowley Nybegynder
30. marts 2005 - 02:14 #9
Jeg prøvede google, og fandt dette her:

http://www.raditha.com/php/progress.php

Virker faktisk ret godt :)
Avatar billede fizk Nybegynder
30. marts 2005 - 11:58 #10
alister_crowley>
Så vidt jeg lige kan gennemskue, er det nogen der skal hentes og installeres på serveren? Dette har jeg desværre ikke mulighe for da det hele ligger på en ekstern server ... Og jeg skal vist have ret gode evner til at overtale, hvis jeg skal få min host til at gøre det :)
Jeg følger spændt med og ser om der dukker noget op! :D
Avatar billede bromer Nybegynder
30. marts 2005 - 12:01 #11
fizk: Det tror jeg desværre ikke du skal regne med når du ikke har rettigheder til at installere på serveren. Forklaringen er faktisk beskrevet i det link alister_crowley postede:

"While other technologies like perl or J2EE gives access to the raw POST data PHP does not. Strangely enough PHP does have a variable named RAW_POST_DATA but this is populated only if the engine cannot identify the content type of the POST data"

Det er bestemt svært at arbejde med data man ikke har. Så skal du - som jeg nævnte - tidligere ud og lytte på TCP/IP trafikken, der bliver sendt mellem en client og din webserver. Noget siger mig dog at du ej heller har rettigheder til det når du ikke kan installere på serveren.
Avatar billede bromer Nybegynder
30. marts 2005 - 12:02 #12
jeg ser at min tankestreg kan være meningsforstyrrende. Den skal flyttes et ord længere hen, så den indskudte sætning bliver "som jeg nævnte tidligere" :)
Avatar billede net-base.dk Nybegynder
28. oktober 2005 - 11:25 #13
Hey det må muligvis på tide at få lukket dette spørgsmål!!!
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