Tolong pilih kategori sesuai, jenis posting (pertanyaan atau bukan) dan sertakan tag/topik yang sesuai misal komputer, php, mysql, dll.
Promosi atau posting tidak pada tempatnya akan kami hapus.
Mencantumkan kode program di posting Anda, tolong ikuti aturan yang sesuai, baca http://diskusiweb.com/discussion/39204/aturan-cara-menyisipkan-kode-program-di-diskusiweb

Baca cara posting gambar/image di post Anda: http://www.diskusiweb.com/discussion/47345/cara-menyisipkan-menyertakan-image-pada-posting/p1

Format Tanggal di mysql [HELP.... PLEASE]

mas/mba...
ini saya pake database mysql kalo tipe data DATE kan yyyy-mm-dd

nah sepertinya ko repot bgt ya.. misal ingin dibuat dd-mm-yyyy(indonesia) atau mm-dd-yyy(kayane inggris)

nah tuh ada caranya ga ? (saya tau ada banyak cara yg di modif)

maksudnya tipE penyimpanan di databasenya langsung. jadi format penyimpanan tanggal dd-mm-yyyy/mm-dd-yyy TAPI tetep bisa untuk perhitungan kondisi.

misal nampilin tanggal. where tanggal>29-12-2012  TETEP BISA....

TERIMA KASIH

Tanggapan

  • Saya lebih enak pakai INT untuk database.. Dan value diisi bersifat unixtime
    Untuk output bisa date() dan strtotime() untuk custom..

    Pernah bikin snippet untuk ini.. Nanti deh kalo iseng ta' post di snippets
  • lho.. tanggal type datanya int ? wah aku belum pernah tuh...

    ok.. saya tunggu mas @crist... 

    lagi mepet ni. lama2 sebel. juga dapat komplen format tanggal masa yyy-mm-dd

    hehe..
    :)>-
  • cepet bgt... kerjanya apa si mas.. ?

    haha.. jadi iri... 

    haha... nyontek ya? :))
  • Nyari beras kerjanya :D
  • haha.... mas kalo yg kaya tadi misal ada kondisi yg menampilkan data pada bulan ini tok ya susah... ?

    beras dimana mas ? aku ikut.... 
    :)
  • edited March 2012
    Maksudnya gimana?

    Itu bisa custom loh..
    Misal mau bulan aja..
    echo custom_date('F', '1331888419'); // Maret
  • bukan gitu mas.... maksud aku... di querynya...

    select * from data where tanggal= ........ ???? gitu...
  • Loh.. Iku mah sebenernya sama aja..

    Misal mau cari bulan ini maret (3)
    SELECT * FROM clients WHERE FROM_UNIXTIME(ini_fieldnya, "%m") = 3

    Misal mau cari tahun ini 2012
    SELECT * FROM clients WHERE FROM_UNIXTIME(ini_fieldnya, "%Y") = 2012
  • edited March 2012
    Yang diatas tuh kalo tipenya INT (unixtime pakenya)
    Cuma kalo udah pake date_time, dan outputnya pengen custom pakai fungsi yang di snipet tadi ya tinggal pake gini :
    echo custom_date('l, d F Y', strtotime('2012-12-29'));

    Note : Kalo emang di hati udah "srek" sama yang date_time, ya pakai itu aja.. Jangan dipaksa untuk ubah apa-apa yang situ udah buat (jika memang ga "srek")
  • oh. gitu ya. hehe...
    sebenere bukannya ga srek si, terus misal kita mau insert to databse...

    buat/rubah datanya yg type date pada awalnya menjadi int gimana ?

    hehe.. mohon petunjuk lagi dah.. 
    :)
  • Apakah time() ga cukup?
  • kok ribet yo?

    simpan tetep : yyyy-mm-dd -> standar kodifikasi
    ambil : http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-format
  • +1
    untuk pake standar, untuk modif insert dan inquery ngandalin date_format dah nyaman kok.
  • Nah, yang master-masternya udah pada ngomong tuh.. 
    Jadi conclusion tergantung sama situ, lebih enak urai di model atau view-nya.. Karena tujuan utamanya hanya untuk format date, jadi bisa manipulasi di view-nya saja tanpa utak-atik di model..
    Betewe, ini mau digunain buat apa? Tanggal lahir, timestamp or other?
  • hehe.... iya mas mba.. untuk modif datanya si udah belajar beberapa kali..
    @krist ya buat semua tanggal...

    sebenere pengin tanya.. kalo formate di fieldset type date itu bisa diganti kagak ? hehe..

    kalo bisa formatnya dibuat mm-dd-yyyy kan enak. hehe...
    bisa ga ? 
    kalo yg default si buat apa.. ?

  • insert nya pake STR_TO_DATE aja
    // jika format tanggal mu saat INSERT adalah mm-dd-yyyy
    INSERT INTO tbl_name (tanggal)
    VALUES(STR_TO_DATE('06-22-2012','%m-%d-%Y'))
     
    // jika format tanggal mu saat INSERT adalah dd-mm-yyyy
    INSERT INTO tbl_name (tanggal)
    VALUES(STR_TO_DATE('22-06-2012','%d-%m-%Y'))
     
    // format asli nya tetep yyyy-mm-dd
    // jadi main di query, bukan ubah format DATE di FIELD nya
  • Kalo ubah aslinya datatype MySQL ya ga bisa.. 
  • sebelumnya terima kasih ya mba mas. hehe... ngrepotin.

    oh ya gini... misal kaya diatas  yg @newuser kan formatnya jadi mm-dd-yyy atau dd-mm-yyy nah dalam bentuk format kaya gitu si bisa buat kondisi where tanggal> atau <  ga ? 
    :)
  • oh.. gitu ya.. paham paham..hahah maf,, ni dah tak coba baru paham diriku...  :))

    terima kasih ya.
    berarti waktu input dd-mm-yyyy atau gimanapun hasilnya tetep yyy-mm-dd paham.
    boleh sekalian tanya. kalo function buat nampilin buat rubah format tanggal gimana ?

    awal : 30-12-2012 ditampilkan 12-30-2012

    ada fungsinya ga ya ? terima kasih... wah dapat ilmu lagi ni..
  • <!--?
    $mysqldate ="2005-12-15";;
    $dateparts = explode("-",$mysqldate);
    list($year,$month,$day) = array($dateparts[0], $dateparts[1], $dateparts[2]);
    $newmysqldate = "$day-$month-$year";
    echo $newmysqldate;
    ?-->
  • nyoba nampilin script baru paham. haha... dah nemu tuh,, ada yg lebih simple ga ya ?
  • Model atau view? Kalo di model ya pake
    SELECT DATE_FORMAT('tanggale', '%d-%m-%Y') AS tanggale
  • oh.. makasih mas... berarti ga bisa select * ya mas.. mesti nama  fielldnya disebut semua ?

  • di explode tanggalnya sprti ni

    $tgl=eregi_replace('/','-',$txttanggal);
    $arr=explode("-",$tgl);
  • edited March 2012
    jah ... ni lagi ... ereg* mah sudah mesti ditinggalin ...

    lagian kalo cuma mau replace cuma kaya gitu, pake aja str_replace()
  • ok.. makasih buat @lonerzaky.. tapi mang enak str_replace...
    tapi saya nu pake database jadi lebih enak yg mas@kris tuh..
  • edited March 2012
    bukan enak, emang itu lebih cepet

    lagian ereg* itu deprecated

    Warning
    This function has been DEPRECATED as of PHP 5.3.0. Relying on this feature is highly discouraged.

    Note:
    As of PHP 5.3.0, the regex extension is deprecated in favor of the PCRE extension. Calling this function will issue an E_DEPRECATED notice. See the list of differences for help on converting to PCRE.

    Tip
    preg_replace(), which uses a Perl-compatible regular expression syntax, is often a faster alternative to ereg_replace().


    *kalo mau baca php manual baik-baik*

    kalo insert nya mah, pake caranya newuser, biar mysql nya yg convert
    insert nya pake STR_TO_DATE aja
    // jika format tanggal mu saat INSERT adalah mm-dd-yyyy
    INSERT INTO tbl_name (tanggal)
    VALUES(STR_TO_DATE('06-22-2012','%m-%d-%Y'))
     
    // jika format tanggal mu saat INSERT adalah dd-mm-yyyy
    INSERT INTO tbl_name (tanggal)
    VALUES(STR_TO_DATE('22-06-2012','%d-%m-%Y'))
     
    // format asli nya tetep yyyy-mm-dd
    // jadi main di query, bukan ubah format DATE di FIELD nya

  • hehe... iya @hiu... makasih ya..

    pengin bgt tapi belum selesai baca php manual.. 
    tak masukin ke agenda lah... hehe...
    ;)
  • weks ? yg gituan kagak usah diapal, ntar inget sendiri kalo biasa pake :D
  • haha.. si iya mas.. tapi makenya kan ga mesti...

    mang php manual banyak ya mas ???

    ada yg bhs.indonesia ga ya... bosen nyarine inggris terus. 
    :))
  • mulai lagi dah ... #-o
  • edited March 2012
    Hehe.. berarti kalo manual sukanya indo jadinya kalo imbasnya gini dong..

    fungsi($fu, $bar);
    gema "setring";
    cetak ($pariabel);
    susunan('kamyu' => 'akyu')
    habiskan($i=1 > $i=5){}


    =)) jadi aneh
  • haha.... aduh... maksudnya diriku penjelasannya bang...


    :))

    oke oke.... aku baca ntar deh.. 
Sign In or Register to comment.