2013-01-21 58 views
0

我有3個數字文本字段,分別是天,小時和分鐘。我已經以這樣的方式編寫腳本,用戶只能爲每個字段鍵入2位數字。將日期和時間轉換爲UNIX時間

有人可以幫我將這3個字段組合成一個整數(這是一個UNIX時間),這樣我就可以將它作爲單個列時間保存在數據庫中。

HTML

<table><tr> 
<td><input id='days' type='text' maxLength='2' placeholder='Days'></td> 
<td><input id='hours' type='text' maxLength='2' placeholder='hours'></td> 
<td><input id='min' type='text' maxLength='2' placeholder='Min'></td> 
</tr></table> 

的JavaScript

var day = document.getElementById('days').value; 
var hours = document.getElementById('hours').value; 
var min = document.getElementById('min').value; 

如何合併這3變量(日,小時,分鐘)到一個單一的UNIX時間變量,並將其保存在數據庫中。 (我知道如何將它保存在數據庫中,但是如何結合3變量並將它保存在單個JavaScript變量中?)

+0

[你有什麼嘗試?](http://www.whathaveyoutried.com/)請參閱[問問建議](http://stackoverflow.com/questions/ask-advice)。 –

+0

天,小時和分鐘如何製作時間戳? – Bergi

回答

1

爲此,我使用的是要使用當前的月份和年份?您需要發佈的字段到PHP腳本,並使用strtotime制定時間戳:

$timestamp = strtotime(date('Y-M') . '-' . $_POST['days'] . ' ' . $_POST['hours'] . ':' . $_POST['min']); 

或者,使用JavaScript:

var d = new Date(); 
var ts = Math.round((new Date(d.getFullYear(), d.getMonth(), $('#day').val(), $('#hours').val(), $('#min').val())).getTime()/1000); 
+0

嗨,我在這工作,但它仍然給我一個錯誤的整數 – user1846348

0

Unix timestamps是自Unix紀元的開始的秒數。

The javascript Date object有一個getTime方法,它返回自unix紀元開始以來的毫秒數。

所以,如果你想在客戶端計算的值:

var time = new Date(0,0,day,hours,min); 
var milliseconds = time.getTime(); 
var seconds = milliseconds/1000; 

我不包括如何將值發送到服務器,並將其保存到數據庫的例子 - 這完全取決於在你使用的服務器端技術上,一個快速的谷歌或stackoverflow搜索將幫助你的那部分。

相關問題