Javascript: image upload zonder refresh.

Pagina: 1
Acties:

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
Ik heb een pagina met een plaatje en een upload knop. Zodra je op het upload knopje drukt krijg je een venster om een plaatje te kiezen, nadat je het plaatje hebt gekozen word het oude verwijderd en nieuwe geupload. Eerst word de image via javascript verwijdert, daarna word het bestand verwijderd zodat het nieuwe plaatje, wat dus de zelfde naam heeft, geupload kan worden. Dit alles gaat goed op het feit na dat zodra ik met javascript het nieuwe plaatje plaats hij het oude plaatje nog in zijn cache heeft staan en zodoende het oude plaatje weer laat zien. Ik verwacht dat als ik elk plaatje anders ga noemen ik dit probleem niet zal hebben. Maar het is voor mij handiger het plaatje aan de hand van het id te noemen zodoende hoef ik niet ook nog eens een sql query uit te voeren bij elke upload.

Is er een manier om de browser cache te verwijderen zonder de pagina te refreshen. Zodat als ik een plaatje 22.jpg verwijder een nieuwe 22.jpg upload en een 22.jpg toevoeg bijv. dat hij uiteindelijk de nieuwe 22.jpg laat zien.

op de volgende pagina kan je het voorbeeld zien.

  • André
  • Registratie: Maart 2002
  • Laatst online: 11-02 14:19

André

Analytics dude

Zet een vraagteken achter de naam van het plaatje, dan zul je iedere keer de verse zien ;)

  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
het vraag teken lost het niet echt op hij lijkt wel iets meer te doen, maar nog steeds niet hoe het moet, ik weet ook niet of het aan mijn cache instellingen ligt.

Als ik in mijn browser naar 22.jpg ga en 22.jpg? krijg ik twee verschillende plaatjes te zien, dus het lijkt erop dat hij de 22.jpg? ook cached. Als browser gebruik ik Camino onder os x 10.4

  • Skit3000
  • Registratie: Mei 2005
  • Laatst online: 20:23
Probeer het eens met 22.jpg?willekeurigeteksthier

  • funkwurm
  • Registratie: December 2005
  • Laatst online: 22-02-2021
Wat je zegt klopt precies, die met het vraagteken wordt ook gecached. Ik zou niet gaan rommelen met de (cache) instellingen van je bezoekers, dat is onorthodox (alhoewel ik die neiging zelf ook wel eens heb) :P

Wat je kunt doen is er met javascript elke keer '?'+new Date().getTime() achter zetten, zo staat er steeds een andere getal achter het vraagteken en wordt hij dus steeds opnieuw gedownload (en in de cache gezet).

update:
Skit3000 schreef op dinsdag 25 juli 2006 @ 21:19:
Probeer het eens met 22.jpg?willekeurigeteksthier
dan wordt er dus een 3e gecached, je wil niet zozeer iets willekeurigs, je wil iets unieks, het aantal milliseconden sinds het UNIX Epoch (1-1-1970, correct me if I'm wrong) is elke milliseconden weer uniek (klinkt wiedus, is het ook).

[ Voor 34% gewijzigd door funkwurm op 25-07-2006 21:22 ]


  • Niakmo
  • Registratie: Juni 2001
  • Laatst online: 10-02-2024
dat is inderdaad een oplossing, ik maak een random getal aan maar de tijd metode is inderdaad een stuk veiliger. Alhoewel een random getal met mt_rand() in php ook wel zou voldoen.

  • Borizz
  • Registratie: Maart 2005
  • Laatst online: 02-01 15:55
Je kan ook zorgen dat met bijvoorbeeld PHP/ASP (weet niet wat je server side gebruikt) de juiste headers worden gestuurd. Je zou het eventueel ook in apache in kunnen stellen.

If I can't fix it, it ain't broken.


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:30

crisp

Devver

Pixelated

Op de frontpage gebruiken we de mutatie-tijd van bijvoorbeeld JS- en CSS-bestanden als extra query-var.

Intentionally left blank

Pagina: 1