[AJAX]upload knop

Pagina: 1
Acties:
  • 654 views sinds 30-01-2008
  • Reageer

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
Ik wil graag voor het beheer gedeelte van mijn website een upload knop maken die direct een "browse" scherm te voorschijn tovert en zodra men het plaatje gekozen heeft het meteen upload en laat zien. eventueel meteen upload progres balk.

Nu had ik het idee om een gewoon upload formulier te gebruiken en deze te verbergen. Maar met een aparte knop het browse schermpje te voor schijn halen. Maar nu is mijn vraag hoe vang ik af dat men iets heeft gekozen zodat ik de ajax functie in werking kan stellen?

  • storeman
  • Registratie: April 2004
  • Laatst online: 21-02 15:33
Met AJAX kan bij mijn weten niet iets geupload worden zonder de pagina te refreshen, wat je wel kan doen is een onchange event aan de box hangen en het formulier submitten.

Ik heb ook wel eens over soortgelijk systeem nagedacht en mee wezen prutsen, maar volgens mij kan dit niet.

"Chaos kan niet uit de hand lopen"


  • maartenba
  • Registratie: November 2001
  • Laatst online: 29-07-2024
Je kan via een iframe werken? De upload daarin laten gebeuren, eventueel dynamisch je iframe aan je document toevoegen.

Linkje wat misschien handig kan zijn: http://ajaxian.com/archiv...-ajax-progress-bar-in-php

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 20-02 15:44
onchange event afvangen werkt maar een leukere en meer handige oplossing is het gebruiken van een Java applet o.i.d. welke ook meerdere afbeeldingen ondersteund.

  • orf
  • Registratie: Augustus 2005
  • Laatst online: 01:05

orf

gebruik Flash :)
Flash 8 heeft een mooie class voor file upload. Meerdere files tegelijk, upload progress, etc.

Verwijderd

wat wil je dan met ajax? hier bestaat al jaren een file input veld voor. Waarschijnlijk kan je onchange je form wel submitten

progressbar is een ander verhaal, dat zou ik doen met wat we vroeger snailhttp noemden (een open http connectie) maar tegenwoordig comet schijnt te heten geloof ik

wat je dan doet is een php (of asp) pagina maken die bewust retetraag is en om de zoveel tijd de voortgang van je upload bijschrijft in een document, iets als (pseudocode)
code:
1
2
3
4
loop {
  echo $voortgang;
  sleep(1);
}

aan de andere kant op je client laat je dit dus of met een httprequest of in een iframe laden en pakt steeds de laatste regel van je document (tot dan toe), waarin je voortgang staat.

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
de twee dingen die ik wil berijken zijn.

zo min mogelijk stappen voor het uploaden. Dus niet op browse clicken, browsen, ok clicken, en op submit en dan pagina overnieuw laden. Maar op browse clicken, browsen, ok clicken, en verder gaan met het rest van het formulier terwijl je plaatje word geupload.

  • SchizoDuckie
  • Registratie: April 2001
  • Laatst online: 18-02-2025

SchizoDuckie

Kwaak

daarvoor is pork.iframe :Y)
gewoon een form, dat via een onzichtbaar iframe verstuurd wordt.

Hang aan de onchange van de file input een this.submit() en pasta :)

Stop uploading passwords to Github!


  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

ASPUpload, JUpload. Coole tooltjes. Doen precies wat jij wilt. URL kun je zo vinden in google. Op hun site staan ook een paar demo's.

Met JavaScript kun je ook een ADO stream ofzo gebruiken, maar daar weet ik verder niks vanaf. Heeft ooit een collega iets mee gedaan, maar volgens mij roept Microsoft al jaren dat het uit IE gehaald gaat worden. (vanaf versie 4 al ofzo) Dat brengt met bij punt twee over die ADO stream. De naam doet mij vermoeden dat het niet in Firefox werkt.

Fat Pizza's pizza, they are big and they are cheezy


  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
ik had het volgende gevonden

code:
1
2
<input type=file  name='browseding'  style='display: none;'>
<a onClick="browseding.click()" href="#">Kies foto</a>


helaas werkt dit niet in firefox, camino, safari ed. Hoe zou ik de browse knop in alle browser kunnen afvangen met een eigen knop?

  • killercow
  • Registratie: Maart 2000
  • Laatst online: 20-02 08:34

killercow

eth0

kijk hier maar even naar:
http://ilse.greentides.net,

Op quirksmode staat een oplossing voor het stylen van je input boxen.

openkat.nl al gezien?


  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
de oplossing op quirksmode is wel heel erg vies. Ik hoopte dat er een manier was om dit in javascript werkend te krijgen. In IE werkt het gewoon zoals het handigst zou zijn. helaas werkt het niet onder firefox ed.

op de ilse pagina zie ik alleen een gewone browse knop.

[ Voor 13% gewijzigd door Niakmo op 22-05-2006 17:12 ]


  • Blue-eagle
  • Registratie: September 2000
  • Niet online
ASPUpload werkt goed, http://support.persits.com/upload/progress.asp inclusief progress bar dus.

Met javascript zou je "onchange" op het input element de form kunnen submitten.. Gooi deze pagina in een iframe als je dat wilt en klaar ben je.

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
Blue-eagle schreef op maandag 22 mei 2006 @ 17:36:
ASPUpload werkt goed, http://support.persits.com/upload/progress.asp inclusief progress bar dus.

Met javascript zou je "onchange" op het input element de form kunnen submitten.. Gooi deze pagina in een iframe als je dat wilt en klaar ben je.
maar ik heb geen ASP server dus dit valt zoiezo af. Ik wil eerst die browse knop afvangen, de rest lukt allemaal wel met JS en PHP.

  • killercow
  • Registratie: Maart 2000
  • Laatst online: 20-02 08:34

killercow

eth0

zirus schreef op maandag 22 mei 2006 @ 17:11:
de oplossing op quirksmode is wel heel erg vies. Ik hoopte dat er een manier was om dit in javascript werkend te krijgen. In IE werkt het gewoon zoals het handigst zou zijn. helaas werkt het niet onder firefox ed.

op de ilse pagina zie ik alleen een gewone browse knop.
Hmm, maar die browser knop upload wel meteen, en geeft ook meteen een preview van de ge-uploade afbeelding weer, (wat toch de bedoeling was?)

openkat.nl al gezien?

Pagina: 1