2014-02-22 57 views
1

這是我的形式設置,當時間正好 但是當我從數據庫中檢索數據的時間形成不正確的新手問題..如何使用php mysqli設置時間?

<?php 

include ('includes/config.php'); 



$mysqli = new mysqli(DB_SERVER,DB_UNAME,DB_PASSWD,DB_NAME); 

if(!$mysqli){ 

    throw new Exception($mysqli->connect_error, $mysqli->connect_errno); 

} 



if(isset($_POST['addbtn'])){ 

$time= date("h:iA"); 
$tqry = $mysqli->prepare("INSERT INTO table_time(table_time.time) VALUES (?) "); 

if(!$tqry){ 

    throw new Exception($mysqli->error); 
} 
$tqry->bind_param('s', $time); 
$tqry->execute(); 


} 

其結果是在我的系統時鐘,但+ 1小時同爲什麼提前 ? 在此先感謝..

+0

設定你的默認時區,我想它的服務器時間 –

+0

您可以利用內建的['NOW()'](http://dev.mysql.com /doc/refman/5.5/en/date-and-time-functions.html)功能,讓您的生活變得更加輕鬆。 –

+0

謝謝大家.... 對不起,這個新手問題.... – user3339824

回答

0

如果你的Web服務器和數據庫服務器將在同一地區(如果它將在雲中),那麼您可以使用MySql Now()的內置函數來存儲時間,否則您必須在您的PHP腳本的頂部設置默認時區。

注意:避免此類問題的最佳方法是將時間戳值存儲在int中,並在顯示時將其轉換爲適當的格式。

例如:

// store 
    table_time = time(); 
// show in php 
    date('h:iA',table_time)