Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Funkcja czasowa
GoldeNx3
post
Post #1





Grupa: Zarejestrowani
Postów: 228
Pomógł: 1
Dołączył: 24.12.2010

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


Witam. Jak mogę zrobić funkcję czasową za pomocą MySql? Np. dałem wpis dnia 10.04.2011 i chce, by za równe 10 dni usunęło automatycznie ten wpis, jak to zrobić?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
Potter125
post
Post #2





Grupa: Zarejestrowani
Postów: 35
Pomógł: 7
Dołączył: 18.02.2007

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


W zasadzie sobie sam odpowiedziałeś (IMG:style_emoticons/default/wink.gif)

Pomyśl logicznie jak to zrobić. Skoro dajesz czas wygaszenia przykładowo 10 dni to możesz to zrobić np tak

|ID|TYTUL|DATA_DODANIA|DATA_WYGASZENIA|

I później np wchodząc w taki moduł wyświetlania wpisów:

  1.  
  2. //schemat
  3.  
  4. if(data_dzisiejsza == DATA_WYGASZENIA) {
  5.  
  6. //delete
  7.  
  8. }
  9.  
  10. //wyswietlanie artykułu
  11.  


Mam nadzieje, że nie oczekiwałeś na gotowca (IMG:style_emoticons/default/tongue.gif)

Ten post edytował Potter125 10.04.2011, 03:37:30
Go to the top of the page
+Quote Post
nekomata
post
Post #3





Grupa: Zarejestrowani
Postów: 314
Pomógł: 44
Dołączył: 12.11.2010
Skąd: UK

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


Możesz sobie np. codziennie za pomocą cron'a odpalać skrypt z takim query
  1. DELETE FROM twoja_tabela WHERE kolumna_date < DATE_SUB(NOW(), INTERVAL 10 DAY);
Mógłbyś równie dobrze nie usuwać tylko w query przy pobieraniu dodać takie samo WHERE jak powyżej...
Go to the top of the page
+Quote Post
modern-web
post
Post #4





Grupa: Zarejestrowani
Postów: 763
Pomógł: 117
Dołączył: 15.03.2010
Skąd: void

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


CRON to jedno rozwiązanie; ale co jeśli kolegi serwer go nie ma (chociaż to mało prawdopodobne w dzisiejszych czasach ;d). Z bazy danych nic samo się nie usunie, nie ma takiej opcji... trzeba wywołać jakiś skrypt z zapytaniem SQL, który odpowiednio `wyczyści` dane z tabel. Jeśli CRON jest Ci totalnie obcy, lub Twój serwer nie udostępnia takiej opcji polecam import owego query (zapytania SQL) do często odwiedzanej przez użytkowników podstrony. Nie jest to najlepsze rozwiązanie lecz całkiem skuteczne. Po prostu przy każdym wyświetleniu podstrony wykona się `w tle` zapytanie do bazy danych i tym samym wykona pożądaną przez Ciebie operację.

Pozdrawiam!

Ten post edytował modern-web 10.04.2011, 11:35:37
Go to the top of the page
+Quote Post
GoldeNx3
post
Post #5





Grupa: Zarejestrowani
Postów: 228
Pomógł: 1
Dołączył: 24.12.2010

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


Ok, ale gdzie najstosowniej odpalić ten skrypt?
Go to the top of the page
+Quote Post
wookieb
post
Post #6





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




http://dev.mysql.com/tech-resources/articl...sql-events.html
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: 24.12.2025 - 14:54