![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
pisze sobie wtyczke do CMS'a która będzię mi czyścić automatycznie historie czytanych newsów, kod sql mam taki: $zapytanie = dbquery("UPDATE ".$db_prefix."news SET news_reads='0'"); I zabardzo coś mi nie wychodzi z normalnymi metodami okresowymi, może ja coś źle robie, więc nie będę się chwalił tu kodem który nie działa. Głównie mi o to chodzi aby takie zapytanie wykonywało się co 120 h Pozdro |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 3 Pomógł: 0 Dołączył: 14.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Polecam użycie crona.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
A bez crona nie da się?
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 100 Pomógł: 11 Dołączył: 20.05.2007 Skąd: z fotela :) Ostrzeżenie: (0%) ![]() ![]() |
jak bez crona to tylko na zasadzie łopatologicznej
![]() i teraz przed skryptem pobierasz date modyfikacji pliku dodajesz do istniejacej daty 120 godzin sprawdzasz czy przekroczyło wzgledem aktualnej godziny jak tak to skrypt ![]() acha 120 godzin to jest 60*60*120 = 432000 sekund (sekund*minut*godzin) które dodajemy do daty pobranej z pliku przy pomocy funkcji filemtime() mam nadzieje ze naprowadziłem na jakies rozwiązanie - wostatecznosci zawsze mozesz robic aktualizowanie wiersza w bazie danych z polem timestamp (mysql) i opierac sie na tej dacie zamiast na pliku z serwerka twój wybór ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
W sumie też rozwiązanie ale jak się okazało na serwerze jest CRON. Serwer jest z home.pl
Jak mam zbudować plik CRON aby to działało? Plik cron-weekly.php CODE $link = mysql_connect('localhost', 'user', 'pass') or die('Nie można się poł±czyć: ' . mysql_error()); $result = mysql_query("UPDATE ".$db_prefix."news SET news_reads='0'"); $result = mysql_query("UPDATE ".$db_prefix."articles SET article_reads='0'"); print ('Historia Newsów i Artykułów wyczyszczona.'); mysql_close($link); ?> Ten post edytował Dr.VaNs 13.10.2007, 12:00:12 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%) ![]() ![]() |
Przeciez ten plik ma wygladac tak jak zwykly plik php. Polacz sie z baza, wywolaj zapytanie i wszystko. Umiesc ten plik w katalogu glownym na serwerze, a cron go uruchomi raz na tydzien.
-------------------- eh, co polska wódka to polska wódka
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Zrobiłem ten plik ale coś nie działa, więc chyba zakładam że coś z nim nie tak. Kod jest post powyżej.
|
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 173 Pomógł: 121 Dołączył: 24.09.2007 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Zobacz tak
Kod $link = mysql_connect('localhost', 'user', 'pass') or die('Nie można się poł±czyć: ' . mysql_error()); $result = mysql_query("UPDATE '.$db_prefix.' news SET news_reads='0'"); $result = mysql_query("UPDATE '.$db_prefix.' articles SET article_reads='0'"); Dlaczego masz dwie, $result skoro każda robi co innego?? |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Niedziała..... tzn jak ręcznie wchodze w plik przez przeglądarke.
co do tych 2 result to przypadek ze mam takie same bo cudowalem roznie z tym, ale z 2 roznymi tez nie dziala. |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 1 173 Pomógł: 121 Dołączył: 24.09.2007 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Kod $link = mysql_connect('localhost', 'user', 'pass') or die('Nie można się poł±czyć: ' . mysql_error()); $result = mysql_query("UPDATE '.$db_prefix.' news SET news_reads='0'"); $result = mysql_query("UPDATE '.$db_prefix.' articles SET article_reads='0'"); A gdzie jest mysql_select_db żeby wybrać bazę danych?? Jest połączenie i zapytanie, ale gdzie jest wybranie bazy danych?? |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
U fakt nie ma, w sumie chyba dlatego nie działa.
Kod ogólnie po wszystkich poprawkach wygląda: CODE $link = mysql_connect('localhost', 'user', 'pass') or die('Nie można się poł±czyć: ' . mysql_error()); $result = mysql_query("UPDATE ep_news SET news_reads='0'"); $resulta = mysql_query("UPDATE ep_articles SET article_reads='0'"); ?> Tylko nie wiem jak zastosowac tą funkcje od wyboru bazy.... |
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 1 173 Pomógł: 121 Dołączył: 24.09.2007 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Cytat Tylko nie wiem jak zastosowac tą funkcje od wyboru bazy.... mysql_select_db(nazwa bazy); |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 12.10.2007 Ostrzeżenie: (0%) ![]() ![]() |
Teraz działa,
dzięki za wszelką pomoc. Pozdro |
|
|
![]()
Post
#14
|
|
![]() Grupa: Zarejestrowani Postów: 219 Pomógł: 5 Dołączył: 18.07.2006 Skąd: Piekary Śląskie Ostrzeżenie: (0%) ![]() ![]() |
Ja się tylko wtrącę i powiem, że najbliższa wersja mysqla ma umożliwiać tworzenie prac okresowych. Czyli definiujesz zapytaniem, ze raz na ilestam dni mysql ma uruchomić zdefiniowana komende.
-------------------- CMS dla Twojej firmy
Wojciech Małota |
|
|
![]()
Post
#15
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Ja się tylko wtrącę i powiem, że najbliższa wersja mysqla ma umożliwiać tworzenie prac okresowych. Czyli definiujesz zapytaniem, ze raz na ilestam dni mysql ma uruchomić zdefiniowana komende. Byloby ciekawie, ale pewnie wiekszosc serwerow (przynajmniej damrowych) by takie cos blokowala, zeby nie zapchac przypadkiem serwera |
|
|
![]()
Post
#16
|
|
![]() Grupa: Zarejestrowani Postów: 1 173 Pomógł: 121 Dołączył: 24.09.2007 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Byloby ciekawie, ale pewnie wiekszosc serwerow (przynajmniej damrowych) by takie cos blokowala, zeby nie zapchac przypadkiem serwera Ale powiem Ci że czasami darmowy serwer daje nam więcej niż jakiś płatny, sam się o tym przekonałem. Pożyjemy, zobaczymy jak to z tym będzie. |
|
|
![]()
Post
#17
|
|
![]() Grupa: Zarejestrowani Postów: 219 Pomógł: 5 Dołączył: 18.07.2006 Skąd: Piekary Śląskie Ostrzeżenie: (0%) ![]() ![]() |
Byloby ciekawie, ale pewnie wiekszosc serwerow (przynajmniej damrowych) by takie cos blokowala, zeby nie zapchac przypadkiem serwera Znając życie to wcale nie będzie największy problem. Większą przeszkodą jest to, że od momentu wydania nowej wersji mysqla do jej zainstalowania na polskich hostingach mija 1,5+ roku. -------------------- CMS dla Twojej firmy
Wojciech Małota |
|
|
![]()
Post
#18
|
|
![]() Grupa: Zarejestrowani Postów: 508 Pomógł: 75 Dołączył: 2.11.2005 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Znając życie to wcale nie będzie największy problem. Większą przeszkodą jest to, że od momentu wydania nowej wersji mysqla do jej zainstalowania na polskich hostingach mija 1,5+ roku. Ale jezeli uzytkownicy beda sie nadmiernie czepiac albo przenosic sie na zagraniczne hostingi, to nie pozostanie polskim nic, jak zainstalowac najnowsza wersje, bo inaczej beda stratni.. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 11:18 |