Avatar billede hoppe11 Nybegynder
08. juli 2007 - 21:27 Der er 10 kommentarer og
1 løsning

temp upload file

Jeg skal have lavet et besked system hvor man har mulighed for at vedhæfte filer..

Selve afsendelsen af beskeden skal ske over to forms.. Først uploader man filen og dernæst sender man beskeden med den vedhæftede fil.

Jeg er rimelig inde i hvordan man sender uploader filer via HTTP, men ved ikke lige hvordan man opmaksinere den uploadede fil indtil man sender den endelige form?
Avatar billede coderdk Praktikant
09. juli 2007 - 20:43 #1
Hvorfor ikke gøre begge dele på én gang?
Avatar billede hoppe11 Nybegynder
11. juli 2007 - 14:56 #2
fordi det er x antal filer, og så kan man hvis det er billeder også se om det er de rigtige billeder :)
Avatar billede hoppe11 Nybegynder
11. juli 2007 - 14:57 #3
man skal måske ud i noget med at man gemmer filnavnet i en midlertidig table i en db?
Avatar billede coderdk Praktikant
11. juli 2007 - 15:10 #4
Det kan du, men du kunne egentlig også bruge sessions og tempnam: http://dk2.php.net/tempnam
Så skal du bare sørge for at rydde op i folderen hvor du opbevarer dem, af og til :)
Avatar billede hoppe11 Nybegynder
15. juli 2007 - 17:47 #5
Hvad er forskellen på den og så den her? http://dk2.php.net/manual/en/function.tmpfile.php

Jeg er ikke helt med på fremgangsmåden? Du siger det skal benyttes med sessions?
Avatar billede coderdk Praktikant
15. juli 2007 - 18:06 #6
tempnam finder et ledigt navn
tmpfile opretter en fil

du behøver ikke at oprette den, da du jo skal bruge move_uploaded_file :)
Avatar billede hoppe11 Nybegynder
17. juli 2007 - 18:56 #7
Vil du så oprette en session med de midlertidige filnavne?

eks.

$_SESSION['tmp_file_arr'][0] = 'fil1.xx';
$_SESSION['tmp_file_arr'][1] = 'fil2.xx';

Hvordan vil du så rydde op i mappen med de midlertidige filer uden at slette filer som evt. kunne være i brug?
Avatar billede coderdk Praktikant
17. juli 2007 - 20:59 #8
Et forslag:

$files = glob("temp_folder/*");
foreach ( $files as $fil )
{
  if ( time() > ( filemtime( $fil ) + 600 ) )
  {
      unlink( $fil );
  }
}

Oversat: Gå alle filer igennem, der ligger i temp_folder/ hvis filen er mere end 600 sekunder gammel, så slet den...
Avatar billede coderdk Praktikant
17. juli 2007 - 20:59 #9
muligvis bør clearstatcache() kaldes først
Avatar billede hoppe11 Nybegynder
14. oktober 2007 - 08:53 #10
coder >

havde helt glemt det her spm, men smid et svar få vi kan få det lukket

tak for hjælpen :)
Avatar billede coderdk Praktikant
14. oktober 2007 - 12:33 #11
Ok :)
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