azidG Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 Jeg holder på å lage et upload-script, hvor folk kan laste opp filer til serveren min. I den forbindelse lurte jeg på om det er mulig å fikse et script som viser en melding mens upload-scriptet kjøres. Dette kunne være kjekt, særlig når filene har litt størrelse og det tar tid å laste opp. F. eks. brukeren trykker Send, og det spretter opp et lite vindu som viser teksten "Filen lastes nå opp, vennligst vent...". Når scriptet har kjørt ferdig så forsvinner dette vinduet (om mulig). Da hindrer man også at utidige brukere avbryter før fila er ferdig lasta opp, fordi de tror det har skjedd noe feil. På forhånd takk! -AzidG Lenke til kommentar
Torbjørn Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 dette kan løses med javascript på siden som du laster opp fra. men det kan bli litt avansert. Lenke til kommentar
???????? Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 Det beste vil være å skrive en tekst ved siden av knappen - problemet er at de fleste browsere sender deg ikke videre til siden før filene er lastet opp, så du kan ikke bruke PHP til dette. JavaScript eller Java er to bra løsninger til dette, men merk at ikke alle kan kjøre dette. Lenke til kommentar
azidG Skrevet 24. februar 2004 Forfatter Del Skrevet 24. februar 2004 OK, noen som har peiling på JavaScript som kunne være så generøse å snekre sammen et eksempel? Kan ikke så mye JavaScript at jeg klarer det selv fra scratch... Lenke til kommentar
sven-o Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 (endret) Kanskje noe slik(benytter frames): 1. Du har en frame med skjemaet, hovedvinduet liksom. 2. Du har en gjemt frame som er target for skjemaet. 3. Et javascript kjøres ved submit. Dette skriptet laster en side til hoved-framen(som viser en "vennligst vent" melding), før den sender skjemaet i den skjulte framen. 4. Når filen er ferdig lastet opp, oppdateres kjøres et javascript som laster en ny side i hoved-framen. Dette skal fungere greit. Det er ikke så vanskelig å bruke javascript til å laste forskjellige frames. Edit: Om jeg skal snekre et eksempel, må det bli en annen gang(i morra eller no). Har ikke tid nå. Endret 24. februar 2004 av sven-o Lenke til kommentar
azidG Skrevet 24. februar 2004 Forfatter Del Skrevet 24. februar 2004 Kanskje noe slik(benytter frames):1. Du har en frame med skjemaet, hovedvinduet liksom. 2. Du har en gjemt frame som er target for skjemaet. 3. Et javascript kjøres ved submit. Dette skriptet laster en side til hoved-framen(som viser en "vennligst vent" melding), før den sender skjemaet i den skjulte framen. 4. Når filen er ferdig lastet opp, oppdateres kjøres et javascript som laster en ny side i hoved-framen. Dette skal fungere greit. Det er ikke så vanskelig å bruke javascript til å laste forskjellige frames. Godt forslag, men jeg har lite lyst til å bruke frames. Noen andre? Lenke til kommentar
sven-o Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 Godt forslag, men jeg har lite lyst til å bruke frames. Noen andre? Hvorfor vil du ikke bruke frames? Lenke til kommentar
Torbjørn Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 framen det her er snakk om er skjult... det gjør vel ikke noe? Lenke til kommentar
The Red Devil Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 http://sourceforge.net/projects/megaupload/ Sjekk ut den, den er cgi basert, og sender filen over til php etterpå. Har ikkje brukt den sjølv ennå men leste om den for ei stund siden. Lenke til kommentar
sven-o Skrevet 24. februar 2004 Del Skrevet 24. februar 2004 Dette ordner biffen uten frames: I form-taggen legger du til en onsubmit(<form onsubmit="vennligst_vent()" ...>) som kaller denne funksjonen: <script language="javascript"> function vennligst_vent(){ window.open('vennligst_vent.html', 'meldingsvindu', 'height=500,width=300,toolbar=no,menubar=no,scrollbars=no,resizable=yes,location=no,directories=no,status=no'); } </script> I upload-scriptet må så ha en test som sjekker om form-et er lastet:(Er ikke vits å lukke et vindu som ikke er åpnet...) if(!empty($_POST['et_feltnavn'])){?> <script language="javascript"> whandle = window.open('about:blank', 'meldingsvindu', 'height=1,width=1,toolbar=no,menubar=no,scrollbars=no,resizable=yes,location=no,directories=no,status=no'); whandle.close(); </script> <?}?> Dette vil skje: - Idet form-et submittes åpner et vindu med en html-fil(vennligst_vent.html). - Når upload-scriptet er ferdig med å laste opp filen vil det skrive ut et javascript som åpner (og overskriver) det forrige vinduet, og lukker det umiddelbart. En bruker vil kun oppleve dette som at vinduet lukkes. See? Lenke til kommentar
azidG Skrevet 24. februar 2004 Forfatter Del Skrevet 24. februar 2004 Dette ordner biffen uten frames: I form-taggen legger du til en onsubmit(<form onsubmit="vennligst_vent()" ...>) som kaller denne funksjonen: <script language="javascript"> function vennligst_vent(){ window.open('vennligst_vent.html', 'meldingsvindu', 'height=500,width=300,toolbar=no,menubar=no,scrollbars=no,resizable=yes,location=no,directories=no,status=no'); } </script> I upload-scriptet må så ha en test som sjekker om form-et er lastet:(Er ikke vits å lukke et vindu som ikke er åpnet...) if(!empty($_POST['et_feltnavn'])){?> <script language="javascript"> whandle = window.open('about:blank', 'meldingsvindu', 'height=1,width=1,toolbar=no,menubar=no,scrollbars=no,resizable=yes,location=no,directories=no,status=no'); whandle.close(); </script> <?}?> Dette vil skje: - Idet form-et submittes åpner et vindu med en html-fil(vennligst_vent.html). - Når upload-scriptet er ferdig med å laste opp filen vil det skrive ut et javascript som åpner (og overskriver) det forrige vinduet, og lukker det umiddelbart. En bruker vil kun oppleve dette som at vinduet lukkes. See? Takker! Nøyaktig det jeg var ute etter! Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå