Autor Zpráva
Lukas_K
Profil
Všechny vás zdravím,

Na stránce http://asy-metri.wz.cz/koncerty.php mám výpis koncertů z databáze, které se tam vkládají přes administrační systém. Tyto koncerty třídím podle data (od nejbližšího), viz mysql_query("SELECT * FROM koncerty ORDER BY date");. Pro vkládání datumu používám Datapicker z knihovny jQuery, viz
<script>
    $(function() {
        $("#datepicker").datepicker({dateFormat: "dd.mm.yy"});
    });
 </script>
Vzhledem k tomu, že používám tento plugin, musím v databázi používat pro uchování dat formát (var)char. Datum se mi tedy řadí pouze podle prvního a druhého čísla v datumu. Nevíte někdo jak upravit kód tak, aby bylo možné v DB použít formát date a následně tedy koncerty podle data řadit? Četl jsem něco o funkci unix_time, ale nevím jak to použít... Za jakoukoli pomoc děkuji.
Alphard
Profil
\DateTime::createFromFormat('d.m.Y', $date);

Teď mě ještě napadlo upozornit na to, že tuto konstrukci nepodporují historické verze PHP, viz manuál.
Lukas_K
Profil
Takže kód bude vypadat takto?
<script>
    $(function() {
        $("#datepicker").datepicker({dateFormat: "dd.mm.yy"});
        \DateTime::createFromFormat('d.m.Y', $date);
    });
 </script>
Stačí, když tuto konstrukci bude podporovat PHP5...
Medvídek
Profil
Lukas_K:
Alphard:
tuto konstrukci nepodporují historické verze PHP
Tak proč to cpete do javascriptu?
Alphard
Profil
Lukas_K:
Uvedl jsem PHP funkci, není možné ji prostě přilepit do javascriptu. Umožňuje vytvořit Datetime objekt z libovolného textového formátu reprezentujícího datum, pak není problém vypsat takto vytvořené datum v libovolné podobě (tj. vložit do databáze jako rrrr-mm-dd) pomocí metody format().

Kdyby to muselo být v js, Datepicker myslím nějak umí pracovat se skrytým polem a zobrazovat datum v alternativním formátu. Sám jsem to ale nikdy nedělal, podívejte se kdyžtak do manuálu. Jediná další alternativa je zřejmě před odesláním formuláře formát data změnit.

[#4] Medvídek
Ano, jsem v kategorii js, ale řešení na straně php považuji za nejjednodušší, je to na jeden řádek. Nemohu za to, že tazatel nevyužil vygenerovaného odkazu na php manuál a bezmyšlenkovitě to připlácl do js kódu.
A pokud jde o verzi PHP, 5.3 je tady více než tři roky, takže proč ji opomíjet.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

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