Apakah ada yang tahu bagaimana mengubah tanggal JS ke datetime MySQL? Juga apakah ada cara untuk menambahkan jumlah menit tertentu ke JS datetime dan kemudian meneruskannya ke MySQL datetime?
javascript
mysql
lokomotif
sumber
sumber
Date
objek.new Date().toMysqlFormat()
ataunew Date(2014,12,14).toMysqlFormat()
atau apapun.toISOString
.atau bahkan lebih pendek:
Keluaran:
Untuk kasus penggunaan yang lebih lanjut, termasuk mengontrol zona waktu, pertimbangkan untuk menggunakan http://momentjs.com/ :
Untuk alternatif yang ringan momentjs, pertimbangkan https://github.com/taylorhakes/fecha
sumber
var d = new Date(); d.toISOString().split('T')[0]+' '+d.toTimeString().split(' ')[0];
Saya pikir solusinya bisa kurang kikuk dengan menggunakan metode
toISOString()
, ia memiliki kompatibilitas browser yang luas.Jadi ekspresi Anda akan menjadi satu baris:
Output yang dihasilkan:
sumber
new Date(1091040026000).toISOString().slice(0, 19).replace('T', ' ');
Date
's offset zona waktu . Sedangkan milik Anda mengembalikan waktu UTC yang mendasari dalam format MySQL DATETIME. Dalam kebanyakan kasus, menyimpan UTC mungkin lebih baik, dan dalam kedua kasus tabel data Anda mungkin harus memberikan info lokasi dalam satu bidang. Alternatifnya, untuk mengubah ke waktu lokal cukup mudah: gunakan... - Date.getTimezoneOffset() * 60 * 1000
(NB juga menyesuaikan untuk Waktu Musim Panas jika berlaku).Nilai waktu JS untuk MySQL
ATAU
ATAU
Anda dapat mengirim ini di params ini akan berhasil.
sumber
Untuk string tanggal arbitrer,
Atau solusi satu baris,
Solusi ini juga berfungsi untuk Node.js saat menggunakan Timestamp di mysql.
Jawaban pertama @Gajus Kuizinas tampaknya memodifikasi prototipe toISOString mozilla
sumber
Pustaka DateJS yang terhormat memiliki rutinitas pemformatan (itu menggantikan ".toString ()"). Anda juga dapat melakukannya sendiri dengan mudah karena metode "Tanggal" memberikan semua nomor yang Anda butuhkan.
sumber
Solusi lengkap (untuk mempertahankan zona waktu) menggunakan konsep jawaban @Gajus:
sumber
Tanggal baru (). toISOString (). slice (0, 10) + "" + Tanggal baru (). toLocaleTimeString ('en-GB');
100% bekerja
sumber
Saya telah memberikan contoh format tanggal JavaScript sederhana, silakan periksa kode di bawah ini
Menggunakan momentjs
Contoh silahkan cek https://jsfiddle.net/sjy3vjwm/2/
sumber
Cara termudah yang benar untuk mengonversi JS Date ke format SQL datetime yang terjadi pada saya adalah yang ini. Ini menangani offset zona waktu dengan benar.
Berhati-hatilah karena jawaban @Paulo Roberto akan memberikan hasil yang salah pada saat pergantian hari (saya tidak bisa meninggalkan komentar). Contoh :
Kami punya 22 Juni, bukan 23!
sumber
jika Anda ingin format UTC sederhana
atau
dan jika ingin di zona waktu tertentu
sumber
Saya menggunakan waktu yang lama ini dan ini sangat membantu saya, gunakan sesuka Anda
dan kemudian:
yang mengembalikan tanggal sekarang dalam 'format MySQL'
untuk menambah waktu adalah
yang akan menambah 30 menit .... dan seterusnya
sumber