Solved

Using Timestap to show messages

Posted on 2011-02-16
7
270 Views
Last Modified: 2012-05-11
Hello there,

I have a mysql database that has an arriving timestamp and a departing timestamp. How would i filter, using php, to get the name (also from the database) of the visitor if they current time is between the two timestamps?! and show a message if there is no current visitor?

Many thanks
0
Comment
Question by:maccaj51
  • 3
  • 2
  • 2
7 Comments
 
LVL 14

Expert Comment

by:Kalpan
ID: 34905717
you can query the database using the following

$sqlquery = "SELECT * FROM `dt_tb` WHERE dt BETWEEN '2005-01-01' AND '2005-12-31' ";

$saResults = mysql_query($sqlquery);

while($obResults = mssql_fetch_row($saResults))
{
   echo $obResults[0]." ".$obResults[1]; // change the field/column as your db table
}


0
 

Author Comment

by:maccaj51
ID: 34905732
Im not 100% but i think you may have misunderstood... very sorry if im wrong.

But i need to see whether the current time is between any of the database entries arriving and departing time...
0
 
LVL 27

Expert Comment

by:Lukasz Chmielewski
ID: 34905771
Haven't tested it but try like this (if you have dates in your db) - if a straight timestamp just use UNIX_TIMESTAMP(NOW())

$sqlquery = "SELECT * FROM mytable WHERE UNIX_TIMESTAMP(NOW()) BETWEEN UNIX_TIMESTAMP(mydate1) AND UNIX_TIMESTAMP(mydate2) ";
0
Microsoft Certification Exam 74-409

Veeam® is happy to provide the Microsoft community with a study guide prepared by MVP and MCT, Orin Thomas. This guide will take you through each of the exam objectives, helping you to prepare for and pass the examination.

 
LVL 14

Expert Comment

by:Kalpan
ID: 34905784
please refer the following query

$sqlquery = "SELECT * FROM `dt_tb` WHERE ".$arr_time." <= CURTIME()  AND ".$dep_time." >=  CURTIME()";
0
 

Author Comment

by:maccaj51
ID: 34905868
hi Roads_Roads,

Your solution works great but how will i then make a different message if there are no returned results?

0
 
LVL 27

Accepted Solution

by:
Lukasz Chmielewski earned 500 total points
ID: 34906084
$sqlquery = "SELECT * FROM mytable WHERE UNIX_TIMESTAMP(NOW()) BETWEEN UNIX_TIMESTAMP(mydate1) AND UNIX_TIMESTAMP(mydate2) ";
$result = mysql_query($sqlquery) or die("wrong query");

if(mysql_num_rows($result) == 0){
   echo"no rows for you !";
}else{
   // here you would output the mysql_fetch_array or just inform that there are rows
   echo"here are the results: <br />";
   while($row = mysql_fetch_array($result)){
      echo"$row[myfield1], $row[myfield2]";
   }
}

Open in new window

0
 

Author Closing Comment

by:maccaj51
ID: 34906103
HERO!
0

Featured Post

NFR key for Veeam Backup for Microsoft Office 365

Veeam is happy to provide a free NFR license (for 1 year, up to 10 users). This license allows for the non‑production use of Veeam Backup for Microsoft Office 365 in your home lab without any feature limitations.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
Developers of all skill levels should learn to use current best practices when developing websites. However many developers, new and old, fall into the trap of using deprecated features because this is what so many tutorials and books tell them to u…
The viewer will learn how to count occurrences of each item in an array.
The viewer will learn how to create and use a small PHP class to apply a watermark to an image. This video shows the viewer the setup for the PHP watermark as well as important coding language. Continue to Part 2 to learn the core code used in creat…

808 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question