datumove if - funkcni rozhodovani

Prosim o radu, chi aby se u polozny pokud je datum u te polozky nejake za poslednich 20 dni zobrazilo slovo NOVINKA. Takze jednoduse skladam rozhodovani pokud je datum vetsi jak sysdate minud 20 dni tak slovo NOVINKA jinak nic. Zatim jsem zprasil toto, ale je to asi uplne mimo, prosim o radu, diky ...

<?
while ($ds = MySQL_Fetch_Array($zaznam)) {
$dis = $ds["ID"];

if(".$ds["datum"]." => "DATE-20"):
"NOVINKA" ;
else:
$"-";
endif;
echo "
\n";
}
?>
parada :-)

jeste nejdriv do databaze ukladej cas ve formatu time() - cas v sekundach od roku 1970, vyhoda je, ze se s nim pracuje dost snadno a zabira jen 10znaku .. pokud ukladas cas jako 'dd.mm.yyyy hh:mm:ss' nebo jinak, tak to, co pisu dole, fungovat samozrejme nebude

if ($ds["datum"] >= (time () - 3600*24*20)) {
echo "NOVINKA";
} else {
echo "-";
}
...atd...
nevim neějak mi to nefacha, ja měl za to, že TIME je časový rozsah (838:59:59 až 838:59:59) a formát datového typu "HH:MM:SS" a taky mi to haže pouze hodiny a ne datum, tak jsem z toho úplně mimo, to možná spíše DATETIME to je i datum ....
Parse error: parse error, expecting `T_STRING' or `T_VARIABLE' or `T_NUM_STRING' in /3w/aktualne.cz/p/pozemky/rodinnedomy/index.php on line 90
time () pouzivej kdyz chces ziskat cas pomoci php, kdyz uz to musis mit v mysql, pouzij UNIX_TIMESTAMP .. btw kdyz uz sem tu chybu kopirujes, nejdriv si ji precti, ja nevidim co mas na radku 90
No nevim, stale ten if nefacha :))
ta chyba neni ve formatu casu ale je to nejaka syntakticka chyba na radku 90 .. kdyz by sis precet to co sem pises (21. 02. 2004 14:02) dozvedel by ses ze byl ocekavan text nebo promenna .. nejspis si na predchozim radku neukoncil uvozovku ..
A třeba ukázat jak teď vypadá? (ten if)
Nevim, uz jsem z toho datumu trochu mimo !

<?php

while ($ds = mysql_fetch_assoc($tabulka)) {
$dis = &$ds['ID'];

if ($["datum"] >= (date() - 3600*24*20)) {
echo "NOVINKA";
} else "nic" {
echo ;
}

?>
tady to mas krapet spleteny:

else "nic" {
echo ;
} // tohle je nesmysl

spise

else {
echo "nic" ;
}
Spletenosti tam budu mit asi s takovou vice, protoze toto taky nejde:))

<?php

while ($ds = mysql_fetch_assoc($tabulka)) {
$dis = &$ds['ID'];

if ($["datum"] >= (date() - 3600*24*20)) {
echo "NOVINKA";
} else {
echo "nic" ;
}

?>
nojo koukam..

<?php

while ($ds = mysql_fetch_assoc($tabulka)) {
$dis = &$ds['ID'];

if ($["datum"] >= (date() - 3600*24*20)) { // tady ti chybi nazev pole
echo "NOVINKA";
} else {
echo "nic" ;
}

?>

takze radeji

<?php

while ($ds = mysql_fetch_assoc($tabulka)) {
$dis = &$ds['ID'];

if ($_POST["datum"] >= (date() - 3600*24*20)) { //nebo $_GET
echo "NOVINKA";
} else {
echo "nic" ;
}
} // navic nemas ukoncen cyklus while
?>
Uz je to lepsi, vysledek je púriznivejsi, ale i presto to neni ono. Vystup zlobi "Warning: Wrong parameter count for date() in ... on line 32"

Ten radek je ona funkce:
if ($_GET["datum"] >= (date() - 3600*24*20)) {
a to i takto:
if ($_POST["datum"] >= (date() - 3600*24*20)) {

Tak zase nevim co s tim radkem jeste udelat:))
date() mas bez parametru, coz nelze...
ma tam byt time () - jak sem ti rikal driv.. a jestli mas i v mysql nejaky format date tak rekni a napisu ti co s tim .. ale s tim time () je to opravdu jednodussi ;-)
DYť je parametr na zjisteni dnu od zacatku roku (365). Tim je to jednodussi.
a co na zacatku roku? v den 3 je clanek ze dne 365 novinka?