webForumDet fria alternativet

upload utan tmp

6 svar · 365 visningar · startad av Draftracer3

Draftracer3Medlem sedan dec. 200354 inlägg
#1

Hej, jag har problem med min upload.
Jag har ett visst antal med upload och därför ser mitt filnamn ut så här

$HTTP_POST_FILES["opt1".$uff]

om jag kör $HTTP_POST_FILES["opt1".$uff]['tmp_name']
så får jag vad jag behöver för att ladda upp filen. men eftersom jag inte vill ladda upp den direkt utan lite senare.. (alltså man ska gå igenom en annan sida innan uppladningen sker) så funkar det inte att ladda upp med tmp. Därför undrar jag hur man kan få tag på det personen skriver i upladnings fältet (ex: C:\Documents and Settings\exempel.gif)

det är inte $HTTP_POST_FILES["opt1".$uff] iaf

SkarreMedlem sedan apr. 20012 447 inlägg
#2

Även om du får tag på användarens lokala sökväg kan du inte få tag på filen i efterhand. Du blir nog tvungen att flytta den till en temporär mapp först.

Draftracer3Medlem sedan dec. 200354 inlägg
#3

Okej... kan jag lägga en session timeout eller nåt så att filen raderas efter en timme eller nåt???

nkrantzMedlem sedan apr. 2002755 inlägg
#4

Du skulle ju kunna göra så att så fort som den andra sidan skickas så flyttar du filen som ligger i den temporära katalogen. I samband med detta kollar du om du har filer som är äldre än exempelvis 1 timme och raderar dessa!

// Nippe

Draftracer3Medlem sedan dec. 200354 inlägg
#5

hur är den stora frågan... men jag håller på nu.... om jag fixar det (väldigt nära) så skriver jag det här

nkrantzMedlem sedan apr. 2002755 inlägg
#6

Med funktionen filectime kan du ta reda på när filen ändrades (i det här fallet skapades). Om den timestampen du får tillbaka är mer än en (1) timme gammal så raderar du filen med unlink.

https://www.php.net/filectime
https://www.php.net/unlink

// Nippe

Draftracer3Medlem sedan dec. 200354 inlägg
#7

Hur ska jag göra så att den söker efter alla filer i mappen och inte bara en fil?

<?php
$filename = 'temp/filnamn.nåt';
if (file_exists($filename)) {
$fildatum = date ("m d Y H:i:s.", filemtime($filename));
$nudatum = date ("m d Y H:i:s.");
   if($nudatum>$fildatum) {
unlink("$filename");
}
}
?>

Hur plusar jag på en timma med nuvarande tid

jag kan ändra namn på filerna när dem kommer in i mappen och sen ändra tillbaka dem när dem går ut...... men finns det nåt sätt att räkna hur många filer det finns i en map??? för att om jag får antalet då är det bara att göra en for
och så är det klart

Genererad på 370 ms · cache AV · v20260730165559-full.f96bc7eb