2013-12-20 4 views
1

등록 된 사용자 시간대를 사용하여 대시 보드에서 설정 한 내용을 기반으로 특정 요일에 전자 메일을받을 수 있는지 확인해야하는 사이트를 만들고 있습니다.여러 시간대로 레코드를 가져 오는 방법

가장 중요한 문제는 태어난 사람의 페이지를 검색해야하는 사람들을 검색하지 않고도 검색 결과 상단에서 사용할 수있는 사용자를 표시 할 수있는 옵션을 제공한다는 것입니다.

사용자 페이지에 이메일 양식을 표시하거나 숨길 수있는 기능에 대한 대략적인 아이디어가 있습니다. 검색 페이지에서 모든 사용자를 표시하고 가장 효과적인 주문을 표시하는 방법에 대한 자세한 내용입니다. 결과.

기본 표준 시간대는 GMT입니다.

오늘은 월요일이고 다음 사용자가 자신의 가용성으로 설정했다 그래서 경우 : 나는 그것보다 내가 실제로 저장하고있는 무슨 날짜/시간대의 질문/접근 생각

USER | timezone | availability_today | emails_received 

1 | America/Los_Angeles | 2 | 1 (still available) 

2 | America/New_York | 0 | 0 (not available) 

3 | Europe/London | 1 | 1 (not available) 

. 이메일 테이블 ID에는 DATE_SENT 열이 있으므로 가용성에 비해 얼마나 많은 이메일이 전송되었는지 계산할 수 있습니다. 그러나 사이트 GMT ... 미국이나 호주에있는 경우 사용자가 정확한 시간이되지 않을 것입니다 ...

내가 말했듯이, 그 더 많은 검색 페이지에서 선택 진술에 대해 거기에있는 모든 시간대를 파악하십시오. 내 호스트가 CONVERT_TZ를 지원하지 않습니다.

아니면 그냥 GMT로 계산합니까?

나는 당신이 그것을 읽고있는 것처럼 확실하게 질문하는 것을 혼란스럽게 생각합니다. 희망을 갖고 누군가 제안을 제시 할만큼 충분히 이해했으면합니다. 아마 그것을 밖으로 만드는 것처럼 혼란스럽지 않을 것입니다.

편집 : -

문제 :

은 월요일 GMT를 말한다. 사용자 (방문객이 아닌) 국가의 화요일에 화요일에 가용성이 0으로 설정됩니다. GMT를 월요일에 서버에 사용하면 전자 메일이 통과하게됩니다. 그리고 화요일에 (사용자 국가의 수요일) 그들은 하나를 얻지 못할 것이다.

방문자는 검색 결과를 보려면 등록하지 않아도됩니다. 사용자에게 전자 메일을 보내려는 경우 필요합니다. 사용자 페이지는 하나의 전환을 다루기에 충분히 쉽습니다. 옵션

+1

스토어의 모든 것을 리드, 여러 시간대를 잊어 버려. 사용자에게 표시하거나 입력을 읽을 때 현지 시간대로 변환하십시오. –

+0

사람들이 왜 대답 대신 설명을합니까? Gordon Linoff는 100 % 정확하며 25 점을받을 가치가있다. 혼합 된 시간대의 데이터를 처리하는 데 시간을 낭비하지 마십시오. 그 방법은 광기를 가져옵니다. –

+0

GMT로 저장하려고합니다. 그 시간대에 기반한 결과 표시와 사용자가 내 머리를 감쌀 수있게 설정 한 것 (편집 참조) –

답변

0

커플 ... 날짜 열에 GMT에서

(1) 점포 다. 당신은 사용자의 현재 시간대에 타임 스탬프 열에서

SELECT 'my date' - INTERVAL 5 HOUR 

(2) 스토어의 모든으로 수행 MySQL의 쿼리하여 끝의 조작을 수행 할 수 있습니다. 올바른 시간대와 'Europe/London' 교체

SELECT @@time_zone; 

SET time_zone = 'Europe/London' 

보기 ... 쿼리를 실행하여 현재 데이터베이스 연결에 대한 현재 시간대를 시간대를 설정할 수 있습니다. MySQL이 타임 스탬프를 사용하면 내부적으로 GMT로 데이터를 저장합니다.데이터를 꺼내면 MySQL은 클라이언트가 현재 설정 한 시간대로 자동으로 시간을 변환합니다.

0

에포크 시간의 저장 시간은 converting for display이고 FROM_UNIXTIME() 만 사용하십시오. 씨 소콜로프 그래서 설득력을 넣어

그 방법은 GMT에 광기를

+0

안녕하세요. DB에 20 개의 다른 시간대가 있기를 원하지 않습니다. 그건 내가 묻는 것이 아니야. 시간대의 차이를 고려하여 결과의 ​​상단에 가용성이있는 사람들을 보여주기 위해 시간대의 차이점을 해결하는 방법을 주로 연구하고 있습니다. –

+0

시간대 및 기원 시간에 대한 열이 있습니다. 그게 내가하는 일이 생각 만 할 수있는 유일한 방법입니다. – hd1

관련 문제