webForumDet fria alternativet

upload utan tmp

PHP

6 svar · 367 visningar · startad av Draftracer3

Medlem sedan dec. 200353 inlägg
Frågan#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

Medlem sedan apr. 20012 427 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.

Medlem sedan dec. 200353 inlägg
#3

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

Medlem sedan apr. 2002830 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

Medlem sedan dec. 200353 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

Medlem sedan apr. 2002830 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

Medlem sedan dec. 200353 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

266 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)
133 ms — ändringar (db)