Solved

Converting $limit_time = time() - 300

Posted on 2004-04-23
6
182 Views
Last Modified: 2010-04-05
We are running e web site, which has an online user counter. This is the php code placed on the site.
      
                $limit_time = time() - 300; // 5 Minute time out. 60 * 5 = 300      
      $sqla = mysql_query("SELECT * FROM ppl_online WHERE UNIX_TIMESTAMP(activity) >= $limit_time GROUP BY ip_address") or die (mysql_error());
      if ($sqla == TRUE)
      {
            $visits = mysql_num_rows($sqla);
      }
      else
      {
            $visits = 0;
      }

can someone convert $limit_time to a variable which delphi can understand..
0
Comment
Question by:bilgehanyildirim
  • 3
  • 2
6 Comments
 
LVL 12

Expert Comment

by:Ivanov_G
ID: 10904189

   hey man .... this is the Delphi section and your code is PHP....

   Anyway .... you can format the date to string .... use date() function

   string date ( string format [, int timestamp])

   Let's say
   
        $delphi_var = date("m.d.y H:i:s", $limit_time);  // you date will be string in format 24.04.2004 00:56:36

   From Delphi you can use StrToDateTime function ....
0
 

Author Comment

by:bilgehanyildirim
ID: 10904214
Sorry but this is a question regarding delphi. May be I couldn't understand.

On my site I can run thus sql
$sqla = mysql_query("SELECT * FROM ppl_online WHERE UNIX_TIMESTAMP(activity) >= $limit_time GROUP BY ip_address") or die (mysql_error());

But in my delphi project I could't convert $limit_time = time() - 300 to a string so that I could use it like

sql := 'SELECT * FROM ppl_online WHERE UNIX_TIMESTAMP(activity) >='+Converted_Time+'GROUP BY ip_address';

I think this is a DELPHI question ;)
0
 
LVL 12

Expert Comment

by:Ivanov_G
ID: 10904294

   use the MySQL function DATE_FORMAT

  Example :

  SELECT DATE_FORMAT('2003-10-03', GET_FORMAT(DATE, 'EUR')

  This is string...
  I am not quite sure if there was function DATETIME_FORMAT. Please check the Documentation, because I don't have it now....
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 

Author Comment

by:bilgehanyildirim
ID: 10913689
didn't work mate.
0
 
LVL 12

Expert Comment

by:Ivanov_G
ID: 10915771

   which part exactly don't work ?
0
 
LVL 17

Accepted Solution

by:
geobul earned 250 total points
ID: 10929799
Hi,

Try this:

function UnixTimeToDateTime(const UnixTime: Integer): TDateTime;
var
  FileTime: TFileTime;
  SystemTime: TSystemTime;
  I: Int64;
begin
  // first convert unix time to a Win32 file time
  I := Int64(UnixTime) * Int64(10000000) + 116444736000000000;
  FileTime.dwLowDateTime := DWORD(I);
  FileTime.dwHighDateTime := I shr 32;

  // now convert to system time
  FileTimeToSystemTime(FileTime, SystemTime);

  // and finally convert the system time to TDateTime
  Result := SystemTimeToDateTime(SystemTime);
end;

Regards, Geo
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

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

Have you ever had your Delphi form/application just hanging while waiting for data to load? This is the article to read if you want to learn some things about adding threads for data loading in the background. First, I'll setup a general applica…
Introduction I have seen many questions in this Delphi topic area where queries in threads are needed or suggested. I know bumped into a similar need. This article will address some of the concepts when dealing with a multithreaded delphi database…
This Micro Tutorial demonstrates using Microsoft Excel pivot tables, how to reverse engineer competitors' marketing strategies through backlinks.
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…

862 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

Need Help in Real-Time?

Connect with top rated Experts

24 Experts available now in Live!

Get 1:1 Help Now