Autor Zpráva
Freeway
Profil *
Čau, mám tabulku s několika řádky a chtěl bych aby se mi např. první řádek vypisoval jen od 15.6.2012 do 22.6.2012, druhej řádek od 22.6.2012 do 29.6.2012 atd ...
Mohl by mi někdo poradit jak na to ? Díky moc
Jan Tvrdík
Profil
Freeway:
A ty data odkdy dokdy máš uložená v DB nebo je chceš mít natvrdo v PHP skriptu?
Kajman
Profil
Freeway:

Do tabulky si přidjte dva sloupce. Např. zobrazit_od a zobrazit_do typu date nebo datetime (pokud chcete rozlišovat i hodiny zobrazení). Nastavte chtěné intervaly u všech řádků.

Pak do výběrového dotazu jednoduše přidáte podmínku
where '2012-06-15'>=zobrazit_od and '2012-06-15'<=zobrazit_do
1Pupik1989
Profil
Hodiny bych tam dal, protože zobrazit_do se může krýt s dalším záznamem zobrazit_od. Takže bude další záznam o den kratšì.
Freeway
Profil *
Tak jsem si udělal ty dva sloupce jak jsi řekl, ale nějak mi nefunguje ta podmínka ve výběrovym dotazu s tim datem
Kajman
Profil
A jak se nefungování projevuje? Jaká hodnoty jste naplnil do těch sloupců a jaký je přesný dotaz, který zkoušíte?
Freeway
Profil *
ve sloupci zobrazit_od je : 2012-06-09 19:00:00
ve sloupci zobrazit_do je : 2012-06-16 19:00:00

a dotaz vypadá takto :
SELECT datum, domaci, hoste, soutez FROM Rozpis WHERE '2012-06-15 12:00:00'>=zobrazit_od and '2012-06-15 12:00:00'<=zobrazit_do

zkoušel jsem i toto :
$dneska = date("Y-m-d H:i:s");
SELECT datum, domaci, hoste, soutez FROM Rozpis WHERE '$dneska'>=zobrazit_od and '$dneska'<=zobrazit_do

Projevuje se to tím že když tu podmínku dám pryč, normálně se to vypíše ale jak ji tam dam tak se nevypíše nic
Šéva
Profil
zkus to takhle,snad to bude i fungovat s trochou štestí...

$dnes=mktime(date("h"),date("i"),date("s"),date("m"),date("d"),date("Y"));

$rok=substr($datum_od,0,4);
$mesic=substr($datum_od,5,2);
$den=substr($datum_od,8,2);
$hodina=substr($datum_od,11,2);
$minuta=substr($datum_od,14,2);
$vterina=substr($datum_od,-2);
$od=mktime($hodina,$minuta,$vterina,$mesic,$den,$rok);

$rok=substr($datum_do,0,4);
$mesic=substr($datum_do,5,2);
$den=substr($datum_do,8,2);
$hodina=substr($datum_do,11,2);
$minuta=substr($datum_do,14,2);
$vterina=substr($datum_do,-2);
$do=mktime($hodina,$minuta,$vterina,$mesic,$den,$rok);


if(($od=<$dnes) and ($do=>$dnes))
{
...
}

nebo mě ještě napadlo,ale to nevím jestli bude fungovat

"SELECT datum, domaci, hoste, soutez FROM Rozpis WHERE zobrazit_od=<".date("Y-m-d h:i:s")." and zobrazit_do=>".date("Y-m-d h:i:s")."";
Kajman
Profil
Freeway:
A ty hodnoty ve sloupcích jsou u stejného řádku? Podmínka vypadá v pořádku, když se tam zadají uváděné hodnoty za ony sloupce, je to splněno.
select 'podminka splnena' from dual
WHERE '2012-06-15 12:00:00'>=cast('2012-06-09 19:00:00' as datetime) and '2012-06-15 12:00:00'<=cast('2012-06-16 19:00:00' as datetime)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: