Nextrek
Diff Revisions
226
vs
258
for /Android/SmartCharging/endPoints/get_list_locali.php
|
@@ -1,9 +1,36 @@ |
1 |
1 |
|
<?php |
|
2 |
+ |
require_once("LocalRepository.php"); |
|
3 |
+ |
|
|
4 |
+ |
$servername = "localhost"; |
|
5 |
+ |
$username = "smartcharging"; |
|
6 |
+ |
$password = "LXRLBaEAuRr7M7jY"; |
|
7 |
+ |
|
|
8 |
+ |
$params = json_decode($_REQUEST["params"], true); //da portare su POST la richiesta |
|
9 |
+ |
|
|
10 |
+ |
$conn; |
|
11 |
+ |
$risposta = array(); |
|
12 |
+ |
$local_repo; |
|
13 |
+ |
$local_list; |
|
14 |
+ |
|
|
15 |
+ |
try { |
|
16 |
+ |
$conn = new PDO("mysql:host=".$servername.";dbname=smartcharging", $username, $password); |
|
17 |
+ |
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); |
|
18 |
+ |
//echo "Connesso con successo al DB"; |
|
19 |
+ |
|
|
20 |
+ |
$local_repo = new LocalRepository($conn); |
|
21 |
+ |
|
|
22 |
+ |
$local_list = $local_repo->getCloseLocals($params["tipologia"], $params["lat"], $params["lon"], $params["distance"]); |
|
23 |
+ |
|
|
24 |
+ |
$risposta["locals"] = $local_list; |
|
25 |
+ |
|
|
26 |
+ |
} |
|
27 |
+ |
catch(PDOException $e) |
|
28 |
+ |
{ |
|
29 |
+ |
echo $e->getMessage(); |
|
30 |
+ |
$risposta["locals"] = null; |
|
31 |
+ |
} |
|
32 |
+ |
|
|
33 |
+ |
echo json_encode($risposta); |
|
34 |
+ |
$conn = null; //Close the connection to the DBMS |
2 |
35 |
|
|
3 |
|
- |
/*Per cercare su MySQL i locali più vicini: |
4 |
|
- |
SELECT id, ( 6371 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lon ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance |
5 |
|
- |
FROM locale |
6 |
|
- |
HAVING distance < 5000 //distance s'intende per chilometri |
7 |
|
- |
ORDER BY distance LIMIT 0 , 20 //i primi 20 locali |
8 |
|
- |
*/ |
9 |
36 |
|
?> |