• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 199
  • Last Modified:

Converting $limit_time = time() - 300

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
bilgehanyildirim
Asked:
bilgehanyildirim
  • 3
  • 2
1 Solution
 
Ivanov_GCommented:

   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
 
bilgehanyildirimAuthor Commented:
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
 
Ivanov_GCommented:

   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
Get your problem seen by more experts

Be seen. Boost your question’s priority for more expert views and faster solutions

 
bilgehanyildirimAuthor Commented:
didn't work mate.
0
 
Ivanov_GCommented:

   which part exactly don't work ?
0
 
geobulCommented:
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
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.

Join & Write a Comment

Featured Post

Cloud Class® Course: MCSA MCSE Windows Server 2012

This course teaches how to install and configure Windows Server 2012 R2.  It is the first step on your path to becoming a Microsoft Certified Solutions Expert (MCSE).

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now