stevenetMedlem sedan juni 20001 251 inlägg Jag vill ta bort en annons efter 60 dagar. Jag använder mig av en MySQL-databas och datumformatet är 2000-11-02.
Låt oss anta att tabellen har två kolumner, id och datum. Hur gör jag?
------------------
SteveNet - stevenet@webmarkit.net
Stjäl inte mer än vad du kan bära, staten hatar konkurrens.
nicclasMedlem sedan feb. 20001 050 inlägg Antar att det inte är MySQL som är problemet.
<?
$datum="2000-10-02";
$old=strtotime(str_replace("-","/",$datum));
$today=strtotime(date("Y/m/d"));
if(($alder=floor(($today-$old)/86400))>60)
echo "Den skall tas bort nu!\n";
else
echo "All clear, den är bara $alder dagar gammal\n";
?>
/nicclas - http://www.nyhetsrubriker.com
nanneMedlem sedan dec. 19991 749 inlägg Utveckling av koden ovan...
<?
$res=mysql_query("SELECT * FROM tabell");
while($r=mysql_fetch_array($res),MYSQL_ASSOC) {
$datum=$r[datum];
$old=strtotime(str_replace("-","/",$datum)); $today=strtotime(date("Y/m/d"));
if(($alder=floor(($today-$old)/86400))>60)
mysql_query("DELETE FROM tabell WHERE id=$r[id]");
}
?>
Observera att den här koden kommer köras när nån är på sidan. Och det är alltså teknisk möjligt att en annons inte kommer tas bort om ingen visar sidan.
Mitt förslag är dock inte att du tar bort annonsen utan gör ett enumfält som är flagga om annonsen ska visas eller inte. Du vill väl veta hur många gånger annonsen visats och klickats på efter att den slutat gälla?
------------------
Fatal Error: Call to undefined function:
brain() in ./self.php on line 1
nanne.net
stevenetMedlem sedan juni 20001 251 inlägg Tackar! Kommer att köra en crontab varje dag för att utföra detta.
------------------
SteveNet - stevenet@webmarkit.net
Stjäl inte mer än vad du kan bära, staten hatar konkurrens.