Maison  >  Article  >  développement back-end  >  Comment récupérer le fuseau horaire du client en utilisant AJAX avec jQuery et PHP ?

Comment récupérer le fuseau horaire du client en utilisant AJAX avec jQuery et PHP ?

DDD
DDDoriginal
2024-11-01 12:15:02520parcourir

How to Retrieve Client's Timezone Using AJAX with jQuery and PHP?

Comment récupérer le fuseau horaire du client à l'aide d'AJAX avec jQuery et PHP

,Question :

Comment puis-je déterminer le fuseau horaire utilisé par un client dans une application PHP, en renvoyant idéalement le décalage horaire en secondes par rapport à UTC ?

,Réponse :

Vous trouverez ci-dessous une solution qui utilise jQuery et PHP :

Code PHP :

<code class="php">session_start();
$timezone = $_SESSION['time'];</code>

Ce code initialise la session et récupère le fuseau horaire du client à partir de la variable de session 'time'.

Code jQuery :

<code class="javascript">$(document).ready(function() {
  if ("<?php echo $timezone; ?>".length==0){
    var visitortime = new Date();
    var visitortimezone = "GMT " + -visitortime.getTimezoneOffset()/60;
    $.ajax({
      type: "GET",
      url: "http://domain.com/timezone.php",
      data: 'time='+ visitortimezone,
      success: function(){
        location.reload();
      }
    });
  }
});</code>

Ce code jQuery s'exécute côté client lors du chargement de la page. Il détecte si le fuseau horaire a déjà été défini et, sinon, envoie le fuseau horaire actuel du client à un script PHP nommé 'timezone.php'.

timezone.php Script :

<code class="php">session_start();
$_SESSION['time'] = $_GET['time'];</code>

Ce script PHP stocke simplement le fuseau horaire du client dans la variable de session 'time'.

Utilisation :

  1. Inclure jQuery dans l'en-tête de la page PHP :
<code class="html"><script type="text/javascript" src="http://code.jquery.com/jquery-latest.min.js"></script></code>
  1. Collez le code jQuery dans la page.
  2. Créez un fichier PHP nommé 'timezone.php' et téléchargez-le dans le même répertoire que la page PHP.
  3. Assurez-vous de mettre à jour l'URL dans le code jQuery pour qu'elle pointe vers le domaine réel où se trouve 'timezone.php'.

Une fois cette configuration effectuée est terminé, le code PHP pourra accéder au fuseau horaire du client via la variable de session 'time'. Le fuseau horaire sera représenté sous la forme d'un décalage de fuseau horaire UTC/GMT en secondes, par exemple -7 pour GMT-7.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn