[ Príspevkov: 4 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
vymazanie inzeratu

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
NapísalOffline : 12.01.2008 10:10 | vymazanie inzeratu

Vedel by mi niekto poradit s nasledovnym problemom?

Mam inzertny portal, kde sa vkladane inzeraty ukladaju do databazy. Chcel by som dosiahnut, aby sa vlozeny inzerat po 3 mesiacoch z databazy automaticky zmazal.

Moja myslienka realizacie je:

Pri vlozeni inzeratu sa do premennej datum uklada spolu s inzeratom aj datum vlozenia. Vytvoril by som teda premennu datum_zmazania, ktorej hodnota by bola datum vlozenia+3 mesiace. To zatial viem zvladnut.

Potom by vsak mal nasledovat script, ktory by porovnaval aktualny datum s premennou datum_zmazania kazdy den trebars o 1.00 po polnoci. No a nasledne ak sa toto zhoduje, by vymazal z databazy konkretny inzerat. Pravdepodobne sa to bude dat pomocou Cron-u. Neviem vsak este ako presne to funguje, s cronom som este nerobil. Problem je vsak, ze mam okolo 100 kategorii - teda tabuliek v databaze, a to by musel prehladavat datumy vo vsetkych tabulkach...


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.09.06
Prihlásený: 05.01.16
Príspevky: 47
Témy: 0 | 0
Bydlisko: Bratislava,...
NapísalOffline : 12.01.2008 12:21 | vymazanie inzeratu

neopagan píše:
Pri vlozeni inzeratu sa do premennej datum uklada spolu s inzeratom aj datum vlozenia. Vytvoril by som teda premennu datum_zmazania, ktorej hodnota by bola datum vlozenia+3 mesiace. To zatial viem zvladnut.


Dúfam, že som to správne pochopil. Ak máš v tabuľke stĺpec dátum, ktorý reprezentuje dátum vloženia, je zbytočné pridávať ďalší stĺpec, ktorý bude obsahovať prakticky rovnaké dáta. Lepšie sa to dá dosiahnuť porovnávaním v SQL príkaze, ktorý bude mazať z tabuľky inzeráty staršie ako 3 mesiace.

Kód:
DELETE FROM kategoria WHERE ABS(DATEDIFF(datum, NOW())) >= 90;


V SQL príkaze je datum stĺpec, v ktorom je uložený dátum pridania. Budú sa mazať inzeráty, ktoré sú staré 90 dní.

Kvôli návrhu databázy, aký opisuješ, budeš musieť spustiť 100 SQL príkazov.


Offline

Užívateľ
Užívateľ
vymazanie inzeratu

Registrovaný: 07.08.06
Prihlásený: 05.04.18
Príspevky: 926
Témy: 261 | 261
Bydlisko: Levice
Napísal autor témyOffline : 12.01.2008 12:49 | vymazanie inzeratu

Aha, dakujem pekne! Takto to vyzera ovela jednoduchsie. To som teda netusil, ze sa to da aj takto. Potom uz len nacasovat pomocou cronu ten script, v ktorom bude zahrnute to DELETE pre vsetky tabulky. Nemylim sa?

Este raz diky Codik!


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 27.09.06
Prihlásený: 05.01.16
Príspevky: 47
Témy: 0 | 0
Bydlisko: Bratislava,...
NapísalOffline : 12.01.2008 12:56 | vymazanie inzeratu

Áno, je to tak ako hovoríš. No a na použitie CRONU máš prakticky 2 možnosti (aj viac ;) ).

1. Spúšťať ho každý deň.

2. Spúšťať ho napr. raz za týždeň. A aby sa ti nezobrazovali staršie inzeráty na stránkach, zmeníš SQL príkazy, ktoré ich vypisujú tak, že tam pridáš podobnú podmienku ako v predchádzajúcom SQL príkaze.
Kód:
SELECT * FROM kategoria WHERE ABS(DATEDIFF(datum, NOW())) < 90;


Záleží od tvojich možností.


 [ Príspevkov: 4 ] 


vymazanie inzeratu



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

Notebook z inzeratu

v Obchody, reklamácie a právo

11

285

09.10.2011 20:06

Mireek

V tomto fóre nie sú ďalšie neprečítané témy.

Daň z inzerátu

v Obchody, reklamácie a právo

8

223

12.05.2013 13:55

shaggy

V tomto fóre nie sú ďalšie neprečítané témy.

Bazos zmazanie topovaneho inzeratu

v Obchody, reklamácie a právo

9

447

08.07.2014 23:29

peto9110

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie

v Ostatné

5

391

20.11.2009 19:16

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie údajov

v Operačné systémy Microsoft

2

91

27.03.2013 20:11

tairikuokami

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie suboru

v Operačné systémy Microsoft

5

327

26.04.2008 10:34

jasonPC

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie hry

v Počítačové hry

1

186

09.08.2012 16:49

xsi69

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie programov

v Ostatné programy

1

389

09.02.2014 10:56

Dadko

V tomto fóre nie sú ďalšie neprečítané témy.

vymazanie užívateľa

v Správy pre vedenie fóra

12

1451

04.03.2008 19:23

_DanWer_

V tomto fóre nie sú ďalšie neprečítané témy.

vymazanie wifi?

v Siete

3

161

15.09.2013 10:30

Daron

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie Windowsu

v Pevné disky a radiče

19

1678

24.03.2011 13:55

shiro

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie priečinku

v Ostatné programy

1

109

27.02.2013 20:17

focko

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie nevymazateľného súboru

v Ostatné programy

4

566

10.02.2014 9:20

tatko Tom

V tomto fóre nie sú ďalšie neprečítané témy.

vymazanie posledneho zaznamu

v Databázy

7

523

29.08.2009 12:55

pogo

V tomto fóre nie sú ďalšie neprečítané témy.

Nefunkčné vymazanie cookies

v PHP, ASP

0

108

30.04.2017 21:45

gold604

V tomto fóre nie sú ďalšie neprečítané témy.

Vymazanie WIN Vista

v Operačné systémy Microsoft

10

1097

03.03.2009 10:55

void



© 2005 - 2018 PCforum, edited by JanoF