Tôi có một vấn đề lạ liên quan đến múi giờ mysql.Cách đặt chính xác múi giờ mysql
Trong tập tin cấu hình trang web của tôi có dòng này mà đặt múi giờ:
mysql_query("SET SESSION time_zone = '$offset';"); // Offset is properly calculated, no worries about that
Phần buồn cười là nếu tôi thêm một dòng khác ngay sau này như thế này:
$q = mysql_query("SELECT NOW() as now");
$row = mysql_fetch_array($row);
echo $row["now"];
Sau khi thực hiện mã đó, thời gian được hiển thị chính xác.
NHƯNG, trong một số truy vấn khác, tôi chèn hàng vào bảng có cột được đặt tên ngày mặc định là CURRENT_TIMESTAMP.
dòng được chèn vào như thế này:
INSERT INTO `sessions` (`user_id`) VALUES `1`
(Bảng phiên có một cột date
rằng mặc định là CURRENT_TIMESTAMP)
Nhưng giá trị chèn vào DB vẫn chỉ trở lại múi giờ của máy chủ: ((
Bất kỳ ý tưởng nào về cách thực hiện điều này?
Khi bạn nói các giá trị được chèn vào điểm DB trở lại múi giờ của máy chủ, bạn kiểm tra như thế nào? Ngoài ra, mặc dù kết nối mà bạn đã thực hiện thủ thuật 'SET SESSION time_zone'? – Romain
là bạn đóng kết nối trước khi chạy 'INSERT'? – ManseUK
Tôi đang kiểm tra nó trên phpMyAdmin, và kết nối không được đóng lại cho đến khi kết thúc việc thực thi tập lệnh –