[PHP] Bestand uploaden

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Een klant van mij wil net zoiets als marktplaats, als iemand een advertentie plaatst kan deze ook een foto uploaden en andere informatie zoals naam, telefoon enz. Het probleem is echter dat de klant een bevestigings-stap er tussen wil, dus een stap waarbij de adverteerder de informatie nog even kan controleren. Nu heb ik hier slechte ervaringen mee ivm de file upload.

Ik moet namelijk dan de lokatie van de file upload bewaren in een hidden field en dan later uploaden maar volgens mij is dat niet mogelijk ivm beveiliging of zoiets. Weet iemand hier iets meer van misschien ? :)

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 16:51
Zet de waarde in je $_SESSION array.

Acties:
  • 0 Henk 'm!

  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 07-07 13:36
Je zou ook een veld in je db kunnen maken waarin staat of de foto is goedgekeurd. Op die manier kun je gewoon je upload doen naar de map waar ie moet staan, en wordt het pas getoond op de site op het moment dat dat veld true is.

Ik denk dat dat de meeste eenvoudige methode is. Je zou bijvoorbeeld de map waar al je afbeeldingen in staan kunnen beveiligen met een .htaccess bestand zodat de afbeeldingen niet direct vanuit de browser op te roepen zijn.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Je bedoeld bijv. c:\documents and settings\foto1.jpg in een session stoppen ? Probleem is dan dat als ik het bestand dan later probeer te uploaden dat dat dan niet meer lukt omdat dat geloof ik dan niet meer is toegestaan van PHP/browser. Tenminste dat probleem had ik de vorige keer toen ik zoiets dergelijk probeerde..

Acties:
  • 0 Henk 'm!

  • wustenveld
  • Registratie: Februari 2002
  • Laatst online: 07-07 13:36
Je kunt geen upload schedulen. Je kunt alleen uploaden op het moment dat de gebruiker daar toestemming voor geeft, anders zou je zomaar elk gewenst bestand van iemands harde schijf kunnen halen.

Acties:
  • 0 Henk 'm!

  • djluc
  • Registratie: Oktober 2002
  • Laatst online: 16:51
Je kunt het bestand toch al bij pagina 1 uploaden? Je kunt in ieders geval niet alsnog uploaden op een andere pagina dan de pagina waar de user het bestand heeft gekozen i.v.m. veiligheid.

Er is wel een vieze manier, een windows maken waarin je het bestand laat kiezen, daarna kun je dan dat venster verbergen door de focus op het hoofd-window te zetten.

[ Voor 32% gewijzigd door djluc op 17-10-2003 14:03 ]


Acties:
  • 0 Henk 'm!

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06 13:31

drm

f0pc0dert

Wat wustenveld zegt is inderdaad het beste. Je hebt namelijk geen enkele garantie dat het bestand dat de vorige stap geupload is nog steeds in de /tmp dir staat op het moment dat de bevestiging binnenkomt.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz


Acties:
  • 0 Henk 'm!

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 17:06

gorgi_19

Kruimeltjes zijn weer op :9

Ik denk dat je, net zoals wustenveld al aangeeft, gewoon al bij het begin moet laten uploaden. Door middel van een cronjobje kan je vervolgens dagelijks alle niet geaccepteerde bestanden verwijderen.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dus het beste is om de foto's bij de eerste stap te uploaden en dan met een crontab de oude rows weg te halen uit de db ?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Gorgi_19 :) je was me net voor @ crontab :)

Acties:
  • 0 Henk 'm!

  • twiekert
  • Registratie: Februari 2001
  • Laatst online: 30-08 11:55
Wat voor bevestiging is het exact? eentje via e-mail of een window met 'Kloppen de gegevens' ja/nee ?

Als de bevestiging online plaats vindt kan je er ook voor kiezen om op het moment dat er op de submit knop gedrukt wordt een popup venster naar voren komt met de ingevoerde gegevens.

gaat men hiermee akkoord dan zorg je dat automagisch het onderliggende invoer formulier gesubmit wordt. (window.opener).

formulier invoer > submit knop -> popup openen met weergave van advertentie -> confirm ja/nee knop onderaan

ja -> window.opener.form.submit(); (o.i.d.)
nee -> sluit popup zodat user form kan editten.


tis maar een idee :)
Pagina: 1