Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usuwanie wpisów starszych niż 1 miesiąc
toomay
post 16.05.2007, 16:03:00
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 23.04.2007

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


Witam, zastanawiam się jak zrobić skrypt dzięki któremu mógłbym usuwać wpisy z bazy danych starsze niż jeden miesiąc.

Mam tabelę mysql przykładowo z newsami w której jednym z wpisów jest data.
Myślałem żeby wyciągnąć datę dodania newsa, następnie odjąć ją od daty aktualnej i dać warunek aby usunąć wszystkie wpisy spełniające ten warunek.

przykład:
  1. <?php
  2. if($_GET['clear']==&& $_GET['confirm']==1)
  3. {
  4. $db_connect=mysql_connect($host,$login,$passw)or die("Błąd podczas pr&oacute;by połączenia z bazą danych !");
  5. @mysql_select_db($db, $db_connect)or die("Błąd podczas pr&oacute;by wyboru bazy danych !");
  6. $sql='SELECT * FROM messages';
  7. $result=mysql_query($sql, $db_connect);
  8. while($row=mysql_fetch_array($result))
  9. {
  10. $date=$row['date'];
  11. $_date=date('d.m.Y');
  12. $starsze=($date-$_date);
  13. echo $starsze;
  14. //$sql2='DELETE FROM messages WHERE date='.$starsze>30.'';
  15. //$result2=mysql_query($sql2, $db_connect);
  16. }
  17. }
  18. ?>


Niestety ten sposób wyświetla mi wynik w stylu: 0000-0.039999999999999.
Poza tym wydaje mi się że:

  1. <?php
  2. $sql2='DELETE FROM messages WHERE date='.$starsze>30.'';
  3. ?>


Nie jest właściwe (jestem tego prawie pewien).
Zastanawiam się też czy konieczne jest użycie pętli.

Proszę o wszelkie wskazówki jak można to osiągnąć, z góry dzięki.

pozdrawiam
toomay

Ten post edytował toomay 16.05.2007, 16:10:27
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
toomay
post 16.05.2007, 16:30:06
Post #2





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 23.04.2007

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


Dzięki za odpowiedź. Ale ja sekund w tym przypadku nie potrzebuje smile.gif Dokładność co do sekundy nie jest konieczna. Po prostu chcę mieć możliwość usunięcia newsów starszych niż jakaś wartość, podałem za przykład jeden miesiąc czyli 30 dni, i zastanawia mnie w jaki sposób można to osiągnąć.
Go to the top of the page
+Quote Post

Posty w temacie


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

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 12:40