![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 0 Dołączył: 26.05.2004 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Uzytkownik robi jakies operacje na plikach graficznych. Najpierw ustala pewne parametry (rozdzielczosc, kompresje, dodaje takst na obraz itp) Wciska OK i otrzymuje wynik w postaci obrazka na monitorze. W tym samym momencie obrazek zostaje zapisany na serwerze jako plik tymczasowy - i gdy uzytkownik zdecyduje sie na ta wersje obrazka to zapisze go do swojej galerii.
Ale zanim zdecyduje sie na zapis wlasciwego obrazka to z pewnoscia bedzie generowal kilka jego poprzednich wersji. Kazda wygenerowana wersja obrazka ma inna nazwe pliku z tego wzgledu aby uniknac cachowania obrazka w przegladarce. I teraz pytanie: jak usunac obrazek gdy uzytkownik w pewnej chwili zrezygnuje i opusci strone? Bo jezeli zakonczy wszystko normalnie i zapisze swoj obrazek to bez problemu mozna usunac ten "temp". |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Trzeba by zapamietac nazwy wszystkich tych plikow, lub tworzyc je w jednym katalogu (zapamietac jego nazwe) i pozniej go usunac z cala zawartoscia. Albo przechowywac obrazki w bazie danych - dodajesz im pole temp (wskazujace czy jest do usuniecia) i id usera (sesji -- zeby rozpoznac czyje to obrazki) i usuwasz wszstkie rokordy z temp = 1 i pasujace do danego usera.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
Ja miałem podobny problem. Miałem skrypcik generujący wykresy dynamicznie.
Zastosowałem katalog TEMP + kasowanie plików "starszych niż" (np 3 dni). Temp sprawdzany był co pierwszą wizytę każdego dnia. Działa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ps - starszych niż - czyli sprawdzana data utworzenia pliku i warunek if w pętli Ten post edytował Darti 17.03.2005, 00:12:27 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 0 Dołączył: 26.05.2004 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Ale kiedy je usunac?
Jezeli user w pewnej chwili przerwie wykonywanie operacji ktore powinien dokonczyc i zostawi po sobie smieci, ktore normalnie zostaly by usuniete jezeli by doszedl do konca operacji ktore rozpoczal. |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
No to wtedy (kiedy przechowujesz obrazki w bazie + dodajesz pole data_utworzenia_obrazka) przy wejsciu dowolnego usera na strone usuwasz wszystkie STARE obrazki (tzn starsze niz np. 30 minut) -- dzieki temu usunesz 'pozostawione' obrazki przez niezakonczone akcje.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 449 Pomógł: 0 Dołączył: 26.05.2004 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Juz mialem isc spac ale chyba dzieki Wam cos wymyslilem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Nazwy plikow tymczasowych beda mialy czas pobierany z time(); I kazdy nastepny user bedzie sprzatal po poprzednim - czyli zrobie skrypt ktory uruchomi kazdy user i bedzie usuwal pliki starsze niz np 1 dzien. To powinno chyba dzialac? |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 1 076 Pomógł: 62 Dołączył: 6.03.2005 Skąd: Wroc Ostrzeżenie: (0%) ![]() ![]() |
znaczy niekoniecznie data byla w bazie - wogole po co mieszac w to baze? skoro czyscimy cyklicznie tempa, to tam jest gora kilka(nascie) obrazkow - uzylem readdir() albo cos takiego zeby sprawdzic datę utworzenia pliku.
ps - takie cos zrobilem (możliwe że częściowo przy pomocy manuala - nie pamiętam)
Ten post edytował Darti 17.03.2005, 00:31:16 |
|
|
![]()
Post
#8
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
@Darti: twoje rozwiaznie jest ok i chyba najprostsze (tzn kodu nie sprawdzalem, chodzi mi o pomysl)
DLaczego baza? Chcialem w prosty sposob zapamietac czas utworzenia obrazkow i usera do nich przyporzadkowanego -- dla latwego usuwania. Ide spac. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 14:46 |