| Autor | Správa |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: Št 22.11.07 20:01 |   |
Do databazi vkladam datumi v tvare:
vkladam to do varchar.. ako spravit, aby to pri vypise zoradovala podla tych datumov? klasicke zoradenie je take, ze datum
22.12. - da prvy
24.5. - da druhy, ked dam ASC... je sice 24.5. skor, ale to on ma skor 22. ako to spravit? |
| |
   |
 |
suchy
 Čestný člen
 Založený: 17.10.2006 Príspevky: 1770
 | Zaslal: Št 22.11.07 20:12 |   |
pouzi timestamp a nemas problem |
_________________ A Real Programmer might or might not know his wife's name. He does, however, know the entire ASCII code table. | |
     |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 20:44 |   |
| kód: | | SELECT * FROM table order by STR_TO_DATE(string_datum, '%d.%m.'); |
|
| |
  |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: Št 22.11.07 21:04 |   |
co je timestamp ?? |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 21:16 |   |
proste, ked pouzivas datum alebo cas, tak pouzivaj datumovy format, nie string, inak budes mat take problemy, ako mas.
Napr. dva datumy vies odcitat (rozdiel budu dni), ale 2 retazce... zase problem...
K nejakemu datumu vies lahko pripocitat napr. 2dni 5hod 31min, vysledok bude nejaky datum+cas, ale so string: zasa problem...
takze lepsie je pouzivat TIMESTAMP, DATE alebo TIME... |
| |
  |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: Št 22.11.07 21:24 |   |
aha.. ale to asi nestaci zmenit v databazi z varchar na DATE, vsak? alebo staci,?
alebo treba aj nejak inak tam datum vkladat? |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 21:38 |   |
akonahle uz tam mas ulozene nejake udaje (cize string-y) tak nemozes stlpec premenovat, iba doplnit novy, ktory uz bude typu TIMESTAMP.
Do neho uz musis vkladat datum v prislusnom formate, napr.:
2007-12-31 14:33:55 ... pre TIMESTAMP
... a potom uz nebude ziaden problem usporiadat vyslednu tabulku:
SELECT from * table WHERE .... ORDER BY datum ASC; |
| |
  |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Št 22.11.07 22:11 |   |
mas tam malu chybu s tou hviezdickou ale neva co je to ASC??? thx |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 22:18 |   |
SELECT * FROM table WHERE ID>0 ORDER BY datum ASC;
ASC ... ascending / vzostupne
DESC ... descending / zostupne |
| |
  |
 |
Blackshadow
 Užívateľ
 Založený: 09.09.2007 Príspevky: 3159 Bydlisko: Nové Zámky
 | Zaslal: Št 22.11.07 22:18 |   |
Ma to byt SELECT * FROM table.. to viem natolko sa vyznam
No problem je ten, ze tam uz je nieco, no.. a ako ten sposob, co pisal sento??
SELECT * FROM table order by STR_TO_DATE(string_datum, '%d.%m.');
?? Nejak sa mi to nepodarilo rozchodit
(ASC je usporiadanie zostupne - ASCENDING, DESC mas vzostupne - DESCENDING ) |
_________________ "It took a lot of work, but this latest Linux patch enables support for machines with 4096 CPUs, up from the old limit of 1024." "Do you have support for smooth full-screen flash video yet?" "No, but who uses that?"
- ak dlho neodpisujem do témy, zabudol som na ňu, takže ma upozornite SS, ak chcete moju odpoveď | |
   |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 22:28 |   |
tak si skus dat vypisat:
SELECT id,datum,STR_TO_DATE(datum, '%d.%m.') FROM table;
aby si zistil, ktory datum(string) sa mu nepaci |
| |
  |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Št 22.11.07 22:30 |   |
jaaj dik ale ved asc sa moze vynechat nie? je to preca nastavene tak aby to vyberalo zostupne, alebo nie? k tej chybe sak ja vem ze sa vyznaz ja len tak inak, necem zakladat ako novu temu ale chcem sa spytat k tym skratenym formam to staci na zaciatku skriptu dat ze | kód: | <?php //nejaky skript
?>
tu bude nejaky html kod ktorym je preplietany php
<? /*a tuto uz ten skrateny tvar*/ ?>
|
alebo treba stale na zaciatku kodu pisat cele <?php thx a sory ze sa ti drbem do temy  |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 22:46 |   |
Priznavam, ze sa mi to pletie (teraz v praci asp aspx ....) ale pokial sa subol bude volat xyz.php, tak staci:
<? ... ?> namiesto <?php ... ?> |
| |
  |
 |
Flety
 Užívateľ
 Založený: 26.11.2006 Príspevky: 4109 Bydlisko: HE(Humenne) - KE Vek: 18
 | Zaslal: Št 22.11.07 22:47 |   |
no to viem ale vraj je to na niektorych serveroch vypnute  |
_________________ Desktop: CASE: Cooler Master Centurion 532 MB: ASUS P5K CPU: Intel Core 2 Quad Q6600@2,4GHz FSB 1066MHz RAM: A-Data Vitesta 2×2GB 800MHz Cl 5-5-5-12 GPU: Saphire ATi Radeon HD5850 Toxic HDD: Seagate Barracuda 500GB 7200rpm ODD1: LG DVD+/-RW + LS(PATA) ODD2:LG DVD+/-RW(SATA) PSU: Fortron Epsilon 700W LCD: LG L226W 1680x1050 2ms | |
       |
 |
sento
 Užívateľ
 Založený: 21.06.2007 Príspevky: 421
 | Zaslal: Št 22.11.07 23:23 |   |
Uz to tu bolo popisovane v teme:easyphp
ale este raz:
ta skratena forma sa nastavuje v php.ini nastavenim parametra: 'short_open_tag' (defaultne je ON, cize povolene)
a zistit si to vies aj precitanim:
echo ini_get('short_open_tag');
alebo vo vypise phpinfo();
(sice sa pise, ze to vies nastavit pomocou:
ini_set('short_open_tag',false);
alebo
ini_set('short_open_tag',0);
ale nespravi to nic.)
Skor si skus vytvorit vlastny php.ini, a nahrat to ku providerovi, mozno to bude takto fungovat.
Ale v kazdom pripade sa odporuca cely zapis:
<?php
............
?> |
| |
  |
 |
|