Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php/serwery]Jak długo są przechowywane pliki tmp z uploadu?, Czyli pytania dotyczące formularzy z uploadem plików
piotr94
post
Post #1





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Witam!
Wykonuję mini-galerię zdjęć do pewnego większego projektu i w formularzu z wieloma innymi polami są przesyłane m.in. pliki z obrazkami. I teraz pojawia się problem. Mianowicie mamy następujące sytuacje:
a) formularz jest wypełniony poprawnie, następuje poprawny zapis do bazy danych, zdjęcia są przenoszone z katalogu tymczasowego serwera do docelowego i następują dalsze działania
(IMG:style_emoticons/default/cool.gif) formularz jest błędnie wypełniony i trzeba go wyświetlić poprawnie lub z powodu innego błędu trzeba wyświetlić go ponownie
i teraz w sytuacji (IMG:style_emoticons/default/cool.gif) mam mały zgryz co zrobić ze zdjęciami, ponieważ nie chcę kazać użytkownikowi ponownie ich ładować przez formularz.
Idealnym rozwiązaniem byłoby zapisanie w sesji nazw tymczasowych i późniejsze korzystanie z plików tymczasowych, którymi zarządza serwer. i tu moje pierwsze pytanie:
Jak długo serwer przechowuje pliki tymczasowe z uploadu i od czego zależą ewentualne ustawienia tych opcji?
Ewentualnie:
Czy macie jakieś inne sugestie dot. rozwiązania tej kwestii ze zdjęciami? Robić jakiś dodatkowy cyklicznie czyszczony katalog ze zdjęciami i w przypadku porzucenia formularza usuwać zdjęcia?
Z góry dziękuję za wszystkie porady.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
cycofiasz
post
Post #2





Grupa: Zarejestrowani
Postów: 711
Pomógł: 127
Dołączył: 5.07.2008
Skąd: Łódź

Ostrzeżenie: (0%)
-----


"The file will be deleted from the temporary directory at the end of the request if it has not been moved away or renamed. "
Najlepiej skopiuj je do jakiegoś pośredniczącego katalogu i go oczyszczać cronem (względem daty utworzenia pliku)

Ten post edytował cycofiasz 20.06.2011, 10:28:48
Go to the top of the page
+Quote Post
tehaha
post
Post #3





Grupa: Zarejestrowani
Postów: 1 748
Pomógł: 388
Dołączył: 21.08.2009
Skąd: Gdynia

Ostrzeżenie: (0%)
-----


ja to rozwiązuje tak:
- mam folder temp na tymczasowe pliki z uploadu, gdzie tworzę jakiś unikalny folder tymczasowy o nazwie unikalnego haszu, ewentualnie nazwa ID użytkownika, jeżeli to zalogowany użytkownik robi, zależy od sytuacji
- nazwę, rozmiar i rozszerzenia zapisuje w sesji i przy ponownym wyświetleniu formularza zamiast pole input/file pokazuję już nazwę i rozmiar pliku i obok link usuń na wypadek gdyby użytkownik się pomylił/rozmyślił
- jeżeli wszystko poprawnie wypełnił i formularz może iść dalej -> pliki są przetwarzane/skalowane i umieszczane w docelowym folderze a folder tymczasowy zostaje usunięty
Go to the top of the page
+Quote Post
piotr94
post
Post #4





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Dzięki za rady, właśnie też wpadłem na taki pomysł. Co do czyszczenia w przypadku "porzucenia formularza" to skrypt i tak będzie używał cron'a, więc dodam po prostu zadanie czyszczenia plików, które nie zostały przeniesione max. 12h od uploadu.
Go to the top of the page
+Quote Post
jackraymund
post
Post #5





Grupa: Zarejestrowani
Postów: 217
Pomógł: 21
Dołączył: 10.06.2011
Skąd: Głogów

Ostrzeżenie: (0%)
-----


może zrób tak jak imageshack
gdy jest już plik o takiej samej nazwie to zmieniaj nazwe np. dodając na końcu cyfre
Go to the top of the page
+Quote Post
piotr94
post
Post #6





Grupa: Zarejestrowani
Postów: 331
Pomógł: 30
Dołączył: 11.11.2008
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Sama sprawa nadawania nazw plikom to już dla mnie nie problem ;-)
Czyszczenie ma zapobiegać namnażaniu się na serwerze niepotrzebnych zdjęć.

Ten post edytował piotr94 20.06.2011, 11:44:49
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 19:22