How do I retrieve the time using PHP

I'm using this:

      <?php
                  $b = time();
                  $the_time = date("g:i a", $b);
                  echo $the_time;
                  ?>

But the time, I'm assuming, is coming from the server that the code is hosted on. How do I grab the time from the user's computer?
brucegustPHP DeveloperAsked:
Who is Participating?
 
Ray PaseurConnect With a Mentor Commented:
It's a common question, and there are some important subtexts to the answer.  Please read this article.  In it, you will find a tested and working example showing exactly how to do this.  You will also read the underlying principles about the DATETIME standards that can make your applications easier to get right!
http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/A_201-Handling-date-and-time-in-PHP-and-MySQL.html

Best regards, ~Ray
0
 
Juan OcasioApplication DeveloperCommented:
Because PHP runs on the server, I do not believe you'll be able to retrieve the client's time unless you run javascript to retrieve that information and store it in a variable for your use.
0
Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

 
honestman31Commented:
You cannot grab( directly ) the user computer time in  PHP
YOu will need to grab his IP address  and then you will need to know the country based on the ip address .

another alternative is to use java script ( java script is a client side scripting so the time will be the computer time of the user not the server time )
0
 
vogenCommented:
sorry didn't realise your are trying to get date from user pc.

0
 
vogenCommented:
another alternative would be setting cookies
0
 
honestman31Connect With a Mentor Commented:
as I mentioned earlier you should use JavaScript    Here is an axample of using PHP and java script to get the GMT time offset using AJAX

http://stackoverflow.com/questions/13/how-can-i-determine-a-web-users-time-zone

Hope it helps
0
 
honestman31Commented:
the Idea is you should have two files
timezone.js   ( that has the JavaScript )
and
timezone.php
that will get the user GMT offest form a session created by timezone.js
0
 
brucegustPHP DeveloperAuthor Commented:
Honestman - Here's what I'm doing based on your suggestion:


<!-- THREE STEPS TO INSTALL CURRENT TIME:

   1.  Paste the specified coding into the HEAD of your HTML document
   2.  Add the onLoad event handler to the BODY tag
   2.  Put the last code into the BODY of your HTML document  -->

<!-- STEP ONE: Copy this code into the HEAD of your HTML document  -->

<HEAD>

<SCRIPT LANGUAGE="JavaScript">

<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->

<!-- Begin
var timerID = null;
var timerRunning = false;
function stopclock (){
if(timerRunning)
clearTimeout(timerID);
timerRunning = false;
}
function showtime () {
var now = new Date();
var hours = now.getHours();
var minutes = now.getMinutes();
var seconds = now.getSeconds()
var timeValue = "" + ((hours >12) ? hours -12 :hours)
if (timeValue == "0") timeValue = 12;
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
timeValue += (hours >= 12) ? " P.M." : " A.M."
document.clock.face.value = timeValue;
timerID = setTimeout("showtime()",1000);
timerRunning = true;
}
function startclock() {
stopclock();
showtime();
}
// End -->
</SCRIPT>

<!-- STEP TWO: Add this onLoad event handler to the BODY tag  -->

<BODY onLoad="startclock()">

<!-- STEP THREE: Copy this code into the BODY of your HTML document  -->

<CENTER>
<FORM name="clock">
<input type="text" name="face" size=13 value="">
</FORM>
</CENTER>

<?php
$time_now =

<!-- Script Size:  1.45 KB  -->


But how do I grab the time produced by the javascript and save it in a php variable. You'll see where I left off with $time_now = ... How do I finish this?
0
 
honestman31Commented:
This is  not the code I mentioned to You .
The code provide seems to display time in the user browser and this time will move  every second , so now what I need to know is what exactly you want to store in PHP variable ?
is it the first time when the user first open the page ?
0
 
pzmatekCommented:
The best option would be to set a cookie. Write current client's time using javascript and read this cookie through php.

Mat
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.