วิธีรวมอินพุตแบบกำหนดเองเมื่อสร้างผู้ใช้ที่ใช้ล็อกอิน Facebook

โดยพื้นฐานแล้วฉันมีโซลูชัน JS สำหรับค้นหาว่าผู้ใช้อยู่ในเขตเวลาใด ฉันใช้ปุ่มเข้าสู่ระบบของ Facebook เป็นช่องทางให้ผู้ใช้เข้าสู่ระบบ/สมัครใช้งาน

นี่คือสิ่งที่ฉันใช้ในการกำหนดเขตเวลาของผู้ใช้: http://pellepim.bitbucket.org/jstz/

ตัวอย่าง:

  >>> var timezone = jstz.determine_timezone();
  >>> timezone.name();
  "Europe/Berlin"

ฉันต้องการรวมค่าส่งคืนของสคริปต์และตั้งค่าลงในฐานข้อมูลในขณะที่ฉันแทรกข้อมูลผู้ใช้จาก Facebook รวมถึงการตั้งค่าเซสชันของพวกเขา

ฉันไม่พบวิธีเชื่อมต่อข้อมูลที่กำหนดเองพร้อมกับข้อมูลรับรองผู้ใช้ของ Facebook


person Jeromie Devera    schedule 28.05.2014    source แหล่งที่มา


คำตอบ (1)


ทำไมคุณไม่ดึงเขตเวลาจากข้อมูลที่ Facebook ให้ไว้กับผู้ใช้ ดูเอกสาร:

ฟิลด์นี้เรียกว่า timezone และมีออฟเซ็ต UTC

คำขอตัวอย่าง:

https://developers.facebook.com/tools/explorer?method=GET&path=me%3Ffields%3Did%2Cname%2Ctimezone&version=v2.0

person Tobi    schedule 28.05.2014
comment
เพราะจะเกิดอะไรขึ้นถ้าผู้ใช้เปลี่ยนเขตเวลาและ Facebook ไม่รู้ ฉันต้องการให้สคริปต์ตรวจจับเขตเวลา js เข้าใจให้ฉัน ฉันยังได้รับชื่อเขตเวลาจริงด้วย แทนที่จะเป็นเพียงค่าชดเชย - person Jeromie Devera; 28.05.2014
comment
ฉันแน่ใจว่า FB ได้มาจากการตั้งค่าเบราว์เซอร์เช่นกัน ไม่แน่ใจว่าทำไมคุณถึงต้องการเก็บชื่อไว้ สำหรับการคำนวณ ฯลฯ มันจะสมเหตุสมผลกว่ามากที่จะรักษา UTC offset ไว้ แต่ก็นะ.. - person Tobi; 28.05.2014
comment
ฉันจะตั้งค่าเขตเวลาของผู้ใช้ใน PHP ได้อย่างไร เพราะทั้งหมดที่ฉันรู้คือการใช้ฟังก์ชัน date_default_timezone_set() ซึ่งไม่อนุญาตให้ใช้หมายเลขออฟเซ็ต และอนุญาตให้ใช้เฉพาะชื่อจริงของเขตเวลาเท่านั้น - person Jeromie Devera; 23.07.2014