65 lines
2.2 KiB
PHP
65 lines
2.2 KiB
PHP
<?php
|
|
|
|
session_start();
|
|
require_once("../config.php");
|
|
|
|
$f=$_REQUEST["f"]; //номер функции
|
|
|
|
try
|
|
{
|
|
$db = new PDO($connstr, $login, $password);
|
|
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
|
|
} catch (Exception $e)
|
|
{
|
|
sendError('Connect error "'.$e->getMessage().'"!',0);
|
|
}
|
|
|
|
if ($f==1) //логин + отправка списка автомобилей
|
|
{
|
|
$login=$_REQUEST["login"];
|
|
$password=$_REQUEST["password"];
|
|
// Выбираем пользователя
|
|
$res = $db->query('select * from "Users" where upper(login)=upper(\''.$login.'\') and password=md5(\''.$password.'\')');
|
|
if($res->rowCount()>0)
|
|
{
|
|
$result = $res->fetch(PDO::FETCH_ASSOC);
|
|
$_SESSION["USER_ID"]=$result['id'];
|
|
$_SESSION["COMPANY_ID"]=$result['company_id'];
|
|
$ans='1|'.session_name().'|'.session_id().'|;';
|
|
|
|
//выбираем список автомобилей и их последние координаты для компании пользователя
|
|
$company_id=
|
|
$res = $db->query('select t1.id,t1.name,t2.lon,t2.lat,Floor(EXTRACT(EPOCH FROM t2.date)) as date from (select id,name,(select id from "ModemGPS" where car_id=c.id order by date desc limit 1) as gps from "Cars" c where company_id='.$_SESSION["COMPANY_ID"].') t1, "ModemGPS" t2 where t1.gps=t2.id order by name');
|
|
while ($row = $res->fetch(PDO::FETCH_ASSOC))
|
|
{
|
|
$ans.=$row['id'].'|';
|
|
$ans.=$row['name'].'|';
|
|
$ans.=$row['lon'].'|';
|
|
$ans.=$row['lat'].'|';
|
|
$ans.=$row['date'].'|';
|
|
$ans.=';';
|
|
}
|
|
print $ans;
|
|
}else
|
|
{
|
|
print '0|'; //не авторизован
|
|
}
|
|
}else
|
|
if ($f==2) //отправка клиенту последних коордионат автомобилей
|
|
{
|
|
if($_SESSION["COMPANY_ID"]>0)
|
|
{
|
|
$res = $db->query('select t1.id,t2.lon,t2.lat,Floor(EXTRACT(EPOCH FROM t2.date)) as date from (select id,(select id from "ModemGPS" where car_id=c.id order by date desc limit 1) as gps_id from "Cars" c where '.$_SESSION["COMPANY_ID"].'=1) t1, "ModemGPS" t2 where t1.gps_id=t2.id');
|
|
$ans='';
|
|
while ($row = $res->fetch(PDO::FETCH_ASSOC))
|
|
{
|
|
$ans.=$row['id'].'|';
|
|
$ans.=$row['lon'].'|';
|
|
$ans.=$row['lat'].'|';
|
|
$ans.=$row['date'].'|';
|
|
$ans.=';';
|
|
}
|
|
print $ans;
|
|
}else print '0|';
|
|
}
|