Autor | Zpráva | ||
---|---|---|---|
Milhauscorpse Profil * |
#1 · Zasláno: 22. 1. 2010, 03:44:28
Dobrý den.Potřeboval bych poradit.Mám formulář ze kterého ukládám do databáze datum koncertu.Používám "select" pro den,mesíc a rok.Chtěl bych uživateli nabídnout v případě vícedenních festivalů i "select" pro konec akce.zapsal bych ho do druhého sloupce.A s čím si nevím absolutně rady je to že v případě ,že akce začne např.:11.02.2010 a skončí 13.02.2010,aby když v hledání koncertů podle data by se mi po zadání datumu 12.02.2010 objevil i tento koncert.Máte někdo nějaký nápad?Nežádám celý script,jen nevím jak na to.
Děkuji M. |
||
Taps Profil |
#2 · Zasláno: 22. 1. 2010, 07:07:05
Milhauscorpse:
zkoušel jsi between ? mysql_query("select * from tabulka where datum between zacatek='2010-02-11' and konec='2010-02-13'"); |
||
Kajman_ Profil * |
#3 · Zasláno: 22. 1. 2010, 08:25:54
Spíše takto nějak
where '2010-02-12' between `zacatek` and ifnull(`konec`,`zacatek`) |
||
Milhauscorpse Profil * |
#4 · Zasláno: 22. 1. 2010, 11:35:47
Taps
Kajman_ Pánové,díky.Někdy si na téhle diskusi připadám jako jelito.Myslel jsem si jak složité to nebude,koukl do manuálu na "between",a ejhle,opravdu jednoduché.Ještě naštuduju způsob od Kajman_ a uvidím co použiju. Takže ještě jednou díky.M |
||
Milhauscorpse Profil * |
#5 · Zasláno: 22. 1. 2010, 12:24:57
Pro ukázku uvádím jak jsem to nakonec vyřešil:
$finddat="$rok$mesic$den"; $vyhledani=mysql_query("select * from koncerty where '$finddat' between `nazev` and ifnull(`nazevaz`,`nazev`) OR nazev>=$dnesni"); Druhá podmínka je pro ukázání i akcí které jsou po zadaném datu.M |
||
Kajman_ Profil * |
#6 · Zasláno: 22. 1. 2010, 12:40:33
Pokud chcete vypsat i ty budoucí, tak to lze rovnou zapsat takto...
where `zacatek`>= '2010-02-12' or `konec`<= '2010-02-12' |
||
petr 6 Profil |
#7 · Zasláno: 22. 1. 2010, 18:46:38
[#6] Kajman: Konec dříve než začátek?
Pokud chce vypsat i ty budoucí, tak stačí where `konec`>= '2010-02-12' |
||
Kajman_ Profil * |
#8 · Zasláno: 22. 1. 2010, 21:15:15
Jo, konec nebo začátek větší, to je fakt. Ale konec není nastavený, pokud je to jednodenní záležitost, proto tam musí být to or.
|
||
Časová prodleva: 14 let
|
0