Subversion Repository Public Repository

Nextrek

Diff Revisions 699 vs 728 for /Android/SmartCharging/endPoints/repositories/LocalRepository.php

Diff revisions: vs.
  @@ -13,7 +13,7 @@
13 13 public function registerLocal($local) {
14 14 $status = array();
15 15
16 - $queryLocal = "INSERT INTO locale(id_utente_owner, nomelocale, descrizione, tipologia, lat, lon, indirizzo, email, telefono, sito, n_punti_ricarica)
16 + /*$queryLocal = "INSERT INTO locale(id_utente_owner, nomelocale, descrizione, tipologia, lat, lon, indirizzo, email, telefono, sito, n_punti_ricarica)
17 17 VALUES ('".$local->id_utente_owner."',
18 18 '".$local->nomelocale."',
19 19 '".$local->descrizione."',
  @@ -24,18 +24,39 @@
24 24 '".$local->email."',
25 25 '".$local->telefono."',
26 26 '".$local->sito."',
27 - '".$local->n_punti_ricarica."')";
27 + '".$local->n_punti_ricarica."')";*/
28 28
29 29 //echo "<br/>".$query."<br/>";
30 30
31 + $queryLocal = "INSERT INTO locale(id_utente_owner, nomelocale, descrizione, tipologia, lat, lon, indirizzo, email, telefono, sito, n_punti_ricarica)
32 + VALUES (:id_utente_owner, :nomelocale, :descrizione, :tipologia, :lat, :lon, :indirizzo, :email, :telefono, :sito, :n_punti_ricarica)";
33 +
31 34 $imgs = $local->imgs;
32 35 $imgsToInsert = array();
33 36
34 37 try {
35 - $this->db->exec($queryLocal);
38 + $stmt = $this->db->prepare($queryLocal);
39 +
40 + $stmt->bindParam(':id_utente_owner', $local->id_utente_owner);
41 + $stmt->bindParam(':nomelocale', $local->nomelocale);
42 + $stmt->bindParam(':descrizione', $local->descrizione);
43 + $stmt->bindParam(':tipologia', $local->tipologia);
44 + $stmt->bindParam(':lat', $local->lat, PDO::PARAM_STR);
45 + $stmt->bindParam(':lon', $local->lon, PDO::PARAM_STR);
46 + $stmt->bindParam(':indirizzo', $local->indirizzo);
47 + $stmt->bindParam(':email', $local->email);
48 + $stmt->bindParam(':telefono', $local->telefono);
49 + $stmt->bindParam(':sito', $local->sito);
50 + $stmt->bindParam(':n_punti_ricarica', $local->n_punti_ricarica);
51 +
52 + $stmt->execute();
53 +
54 + //$this->db->exec($queryLocal);
36 55 $id_locale = $this->db->lastInsertId();
37 56
38 - $queryUser = "UPDATE utente SET is_owner=1 WHERE id=".$local->id_utente_owner;
57 + //$queryUser = "UPDATE utente SET is_owner=1 WHERE id=".$local->id_utente_owner;
58 +
59 + $queryUser = "UPDATE utente SET is_owner=1 WHERE id=:id";
39 60
40 61 /*foreach($imgs as $img) {
41 62 $imgsToInsert[] = '("'.$id_locale.'", "'.$img.'")';
  @@ -45,7 +66,11 @@
45 66
46 67 $this->db->exec($queryImgs);*/
47 68
48 - $this->db->exec($queryUser);
69 + $stmt = $this->db->prepare($queryUser);
70 + $stmt->bindParam(':id', $local->id_utente_owner);
71 + $stmt->execute();
72 +
73 + //$this->db->exec($queryUser);
49 74
50 75 $status["local_id"] = $id_locale;
51 76 $status["return"] = 0;
  @@ -63,14 +88,22 @@
63 88 }
64 89
65 90 public function setLocalPosition($id_local, $lat, $lon, $indirizzo) { //deprecata
66 - $query = "UPDATE locale
91 + /*$query = "UPDATE locale
67 92 SET lat=".$lat.",lon=".$lon.",indirizzo='".$indirizzo."'".
68 - "WHERE id=".$id_local;
93 + "WHERE id=".$id_local;*/
94 +
95 + $query = "UPDATE locale SET lat=:lat,lon=:lon,indirizzo=:indirizzo WHERE id=:id";
69 96
70 97 //echo "<br/>".$query."<br/>";
71 98
72 99 try {
73 - return $this->db->exec($query);
100 + $stmt = $this->db->prepare($query);
101 + $stmt->bindParam(':id', $id_local);
102 + $stmt->bindParam(':lat', $lat, PDO::PARAM_STR);
103 + $stmt->bindParam(':lon', $lon, PDO::PARAM_STR);
104 + $stmt->bindParam(':indirizzo', $indirizzo);
105 + $result = $stmt->execute();
106 + return $result;
74 107 } catch (PDOException $e) {
75 108 echo $e->getMessage();
76 109 return -1;
  @@ -78,14 +111,20 @@
78 111 }
79 112
80 113 public function setLocalName($id_local, $name) { //deprecata
81 - $query = "UPDATE locale
114 + /*$query = "UPDATE locale
82 115 SET nomelocale='".$name."'".
83 - "WHERE id=".$id_local;
116 + "WHERE id=".$id_local;*/
117 +
118 + $query = "UPDATE locale SET nomelocale=:nomelocale WHERE id=:id";
84 119
85 120 //echo "<br/>".$query."<br/>";
86 121
87 122 try {
88 - return $this->db->exec($query);
123 + $stmt = $this->db->prepare($query);
124 + $stmt->bindParam(':nomelocale', $name);
125 + $stmt->bindParam(':id', $id_local);
126 + $result = $stmt->execute();
127 + return $result;
89 128 } catch (PDOException $e) {
90 129 echo $e->getMessage();
91 130 return -1;
  @@ -93,12 +132,18 @@
93 132 }
94 133
95 134 public function setLocalDescription($id_local, $description) { //deprecata
96 - $query = "UPDATE locale
135 + /*$query = "UPDATE locale
97 136 SET descrizione='".$description."'".
98 - "WHERE id=".$id_local;
137 + "WHERE id=".$id_local;*/
138 +
139 + $query = "UPDATE locale SET descrizione=:descrizione WHERE id=:id";
99 140
100 141 try {
101 - return $this->db->exec($query);
142 + $stmt = $this->db->prepare($query);
143 + $stmt->bindParam(':descrizione', $description);
144 + $stmt->bindParam(':id', $id_local);
145 + $result = $stmt->execute();
146 + return $result;
102 147 } catch (PDOException $e) {
103 148 echo $e->getMessage();
104 149 return -1;
  @@ -107,58 +152,88 @@
107 152
108 153 public function editLocal($local) { //$local è l'oggetto Locale
109 154 $status = array();
155 + $array_params = array();
110 156
111 157 try {
112 158
113 159 $setString = "";
114 160
115 161 if (isset($local->nomelocale) && !is_null($local->nomelocale)) {
116 - $setString = ($setString == "") ? "nomelocale='".$local->nomelocale."'" : $setString.",nomelocale='".$local->nomelocale."'";
162 + //$setString = ($setString == "") ? "nomelocale='".$local->nomelocale."'" : $setString.",nomelocale='".$local->nomelocale."'";
163 + $setString = ($setString == "") ? "nomelocale=:nomelocale" : $setString.",nomelocale=:nomelocale";
164 + $array_params[":nomelocale"] = $local->nomelocale;
117 165 }
118 166
119 167 if (isset($local->descrizione) && !is_null($local->descrizione)) {
120 - $setString = ($setString == "") ? "descrizione='".$local->descrizione."'" : $setString.",descrizione='".$local->descrizione."'";
168 + //$setString = ($setString == "") ? "descrizione='".$local->descrizione."'" : $setString.",descrizione='".$local->descrizione."'";
169 + $setString = ($setString == "") ? "descrizione=:descrizione" : $setString.",descrizione=:descrizione";
170 + $array_params[":descrizione"] = $local->descrizione;
121 171 }
122 172
123 173 if (isset($local->tipologia) && !is_null($local->tipologia)) {
124 - $setString = ($setString == "") ? "tipologia='".$local->tipologia."'" : $setString.",tipologia='".$local->tipologia."'";
174 + //$setString = ($setString == "") ? "tipologia='".$local->tipologia."'" : $setString.",tipologia='".$local->tipologia."'";
175 + $setString = ($setString == "") ? "tipologia=:tipologia" : $setString.",tipologia=:tipologia";
176 + $array_params[":tipologia"] = $local->tipologia;
125 177 }
126 178
127 179 if (isset($local->lat) && !is_null($local->lat)) {
128 - $setString = ($setString == "") ? "lat='".$local->lat."'" : $setString.",lat='".$local->lat."'";
180 + //$setString = ($setString == "") ? "lat='".$local->lat."'" : $setString.",lat='".$local->lat."'";
181 + $setString = ($setString == "") ? "lat=:lat" : $setString.",lat=:lat";
182 + $array_params[":lat"] = $local->lat;
129 183 }
130 184
131 185 if (isset($local->lon) && !is_null($local->lon)) {
132 - $setString = ($setString == "") ? "lon='".$local->lon."'" : $setString.",lon='".$local->lon."'";
186 + //$setString = ($setString == "") ? "lon='".$local->lon."'" : $setString.",lon='".$local->lon."'";
187 + $setString = ($setString == "") ? "lon=:lon" : $setString.",lon=:lon";
188 + $array_params[":lon"] = $local->lon;
133 189 }
134 190
135 191 if (isset($local->indirizzo) && !is_null($local->indirizzo)) {
136 - $setString = ($setString == "") ? "indirizzo='".$local->indirizzo."'" : $setString.",indirizzo='".$local->indirizzo."'";
192 + //$setString = ($setString == "") ? "indirizzo='".$local->indirizzo."'" : $setString.",indirizzo='".$local->indirizzo."'";
193 + $setString = ($setString == "") ? "indirizzo=:indirizzo" : $setString.",indirizzo=:indirizzo";
194 + $array_params[":indirizzo"] = $local->indirizzo;
137 195 }
138 196
139 197 if (isset($local->email) && !is_null($local->email)) {
140 - $setString = ($setString == "") ? "email='".$local->email."'" : $setString.",email='".$local->email."'";
198 + //$setString = ($setString == "") ? "email='".$local->email."'" : $setString.",email='".$local->email."'";
199 + $setString = ($setString == "") ? "email=:email" : $setString.",email=:email";
200 + $array_params[":email"] = $local->email;
141 201 }
142 202
143 203 if (isset($local->telefono) && !is_null($local->telefono)) {
144 - $setString = ($setString == "") ? "telefono='".$local->telefono."'" : $setString.",telefono='".$local->telefono."'";
204 + //$setString = ($setString == "") ? "telefono='".$local->telefono."'" : $setString.",telefono='".$local->telefono."'";
205 + $setString = ($setString == "") ? "telefono=:telefono" : $setString.",telefono=:telefono";
206 + $array_params[":telefono"] = $local->telefono;
145 207 }
146 208
147 209 if (isset($local->sito) && !is_null($local->sito)) {
148 - $setString = ($setString == "") ? "sito='".$local->sito."'" : $setString.",sito='".$local->sito."'";
210 + //$setString = ($setString == "") ? "sito='".$local->sito."'" : $setString.",sito='".$local->sito."'";
211 + $setString = ($setString == "") ? "sito=:sito" : $setString.",sito=:sito";
212 + $array_params[":sito"] = $local->sito;
149 213 }
150 214
151 215 if (isset($local->n_punti_ricarica) && !is_null($local->n_punti_ricarica)) {
152 - $setString = ($setString == "") ? "n_punti_ricarica='".$local->n_punti_ricarica."'" : $setString.",n_punti_ricarica='".$local->n_punti_ricarica."'";
216 + //$setString = ($setString == "") ? "n_punti_ricarica='".$local->n_punti_ricarica."'" : $setString.",n_punti_ricarica='".$local->n_punti_ricarica."'";
217 + $setString = ($setString == "") ? "n_punti_ricarica=:n_punti_ricarica" : $setString.",n_punti_ricarica=:n_punti_ricarica";
218 + $array_params[":n_punti_ricarica"] = $local->n_punti_ricarica;
153 219 }
154 220
155 - $query = "UPDATE locale
221 + /*$query = "UPDATE locale
222 + SET ".$setString."
223 + WHERE id=".$local->id;*/
224 +
225 + $query = "UPDATE locale
156 226 SET ".$setString."
157 - WHERE id=".$local->id;
227 + WHERE id=:id";
228 +
229 + $array_params[":id"] = $local->id;
230 +
231 + $stmt = $this->db->prepare($query);
232 + $stmt->execute($array_params);
158 233
159 234 //echo "<br/>".$query."<br/>";
160 235
161 - $this->db->exec($query);
236 + //$this->db->exec($query);
162 237 $status["return"] = 0;
163 238
164 239 } catch (PDOException $e) {
  @@ -176,16 +251,22 @@
176 251 $local = new Local();
177 252 $query;
178 253
179 - $sql = "SELECT img
254 + /*$sql = "SELECT img
180 255 FROM immagini_locali
181 - WHERE id_locale=".$id_local;
256 + WHERE id_locale=".$id_local;*/
257 +
258 + $sql = "SELECT img FROM immagini_locali WHERE id_locale=:id_locale";
182 259
183 260 try {
184 - $query = $this->db->query($sql);
261 + $stmt = $this->db->prepare($sql);
262 + $stmt->bindParam(':id_locale', $id_local);
263 + $query = $stmt->execute();
264 +
265 + //$query = $this->db->query($sql);
185 266
186 267 if (!$query) return null;
187 268
188 - $rows = $query->fetchAll(PDO::FETCH_ASSOC);
269 + $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
189 270
190 271 $local->imgs = array();
191 272
  @@ -235,18 +316,25 @@
235 316 $local = new Local();
236 317 $queryLocal;
237 318
238 - $sqlLocal = "SELECT id, tipologia, descrizione, indirizzo, nomelocale
319 + /*$sqlLocal = "SELECT id, tipologia, descrizione, indirizzo, nomelocale
239 320 FROM locale
240 - WHERE id=".$id_local;
321 + WHERE id=".$id_local;*/
241 322
242 - //echo "<br/>".$sql."<br/>";
323 + //echo "<br/>".$sqlLocal."<br/>";
324 +
325 + $sqlLocal = "SELECT id, tipologia, descrizione, indirizzo, nomelocale FROM locale WHERE id=:id";
243 326
244 327 try {
245 - $queryLocal = $this->db->query($sqlLocal);
328 + $stmt = $this->db->prepare($sqlLocal);
329 + $stmt->bindParam(':id', $id_local);
330 + $queryLocal = $stmt->execute();
331 +
332 + //$queryLocal = $this->db->query($sqlLocal);
246 333
247 334 if (!$queryLocal) return null;
248 335
249 - $rowLocal = $queryLocal->fetch(PDO::FETCH_ASSOC);
336 + //$rowLocal = $queryLocal->fetch(PDO::FETCH_ASSOC);
337 + $rowLocal = $stmt->fetch(PDO::FETCH_ASSOC);
250 338
251 339 $local->tipologia = $rowLocal["tipologia"];
252 340 $local->descrizione = $rowLocal["descrizione"];
  @@ -254,14 +342,21 @@
254 342 //$local->stelle = $row["stelle"];
255 343 $local->indirizzo = (!is_null($rowLocal["indirizzo"])) ? $rowLocal["indirizzo"] : "";
256 344
257 - $sqlStelle = "SELECT avg(commenti.voto) as stelle
345 + /*$sqlStelle = "SELECT avg(commenti.voto) as stelle
258 346 FROM commenti
259 347 WHERE commenti.id_locale=".$id_local."
260 - GROUP BY commenti.id_locale";
348 + GROUP BY commenti.id_locale";*/
349 +
350 + $sqlStelle = "SELECT avg(commenti.voto) as stelle FROM commenti WHERE commenti.id_locale=:id_locale GROUP BY commenti.id_locale";
261 351
262 - $resultStelle = $this->db->query($sqlStelle);
352 + $stmt = $this->db->prepare($sqlStelle);
353 + $stmt->bindParam(':id_locale', $id_local);
354 + $resultStelle = $stmt->execute();
263 355
264 - $local->stelle = ($resultStelle->rowCount()>0) ? $resultStelle->fetchColumn() : 0;
356 + //$resultStelle = $this->db->query($sqlStelle);
357 +
358 + //$local->stelle = ($resultStelle->rowCount()>0) ? $resultStelle->fetchColumn() : 0;
359 + $local->stelle = ($stmt->rowCount()>0) ? $stmt->fetchColumn() : 0;
265 360
266 361 return $local;
267 362
  @@ -275,21 +370,33 @@
275 370 $local = new Local();
276 371 $queryLocal;
277 372
373 + /*$sqlLocal = "SELECT l.id as id, l.id_utente_owner as id_utente_owner, u.username as username_owner,
374 + l.nomelocale as nomelocale, l.descrizione as descrizione, l.tipologia as tipologia,
375 + l.lat as lat, l.lon as lon, l.indirizzo as indirizzo, l.email as email,
376 + l.telefono as telefono, l.sito as sito, l.n_punti_ricarica as n_punti_ricarica
377 + FROM locale l ,utente u
378 + WHERE l.id=".$id_local." AND u.id=l.id_utente_owner";*/
379 +
278 380 $sqlLocal = "SELECT l.id as id, l.id_utente_owner as id_utente_owner, u.username as username_owner,
279 381 l.nomelocale as nomelocale, l.descrizione as descrizione, l.tipologia as tipologia,
280 382 l.lat as lat, l.lon as lon, l.indirizzo as indirizzo, l.email as email,
281 383 l.telefono as telefono, l.sito as sito, l.n_punti_ricarica as n_punti_ricarica
282 384 FROM locale l ,utente u
283 - WHERE l.id=".$id_local." AND u.id=l.id_utente_owner";
385 + WHERE l.id=:id_locale AND u.id=l.id_utente_owner";
284 386
285 387 //echo "<br/>".$sql."<br/>";
286 388
287 389 try {
288 - $queryLocal = $this->db->query($sqlLocal);
390 + $stmt = $this->db->prepare($sqlLocal);
391 + $stmt->bindParam(':id_locale', $id_local);
392 + $queryLocal = $stmt->execute();
393 +
394 + //$queryLocal = $this->db->query($sqlLocal);
289 395
290 396 if (!$queryLocal) return null;
291 397
292 - $rowLocal = $queryLocal->fetch(PDO::FETCH_ASSOC);
398 + //$rowLocal = $queryLocal->fetch(PDO::FETCH_ASSOC);
399 + $rowLocal = $stmt->fetch(PDO::FETCH_ASSOC);
293 400
294 401 $local->id = $rowLocal["id"];
295 402 $local->id_utente_owner = $rowLocal["id_utente_owner"];
  @@ -305,16 +412,23 @@
305 412 $local->sito = $rowLocal["sito"];
306 413 $local->n_punti_ricarica = $rowLocal["n_punti_ricarica"];
307 414
308 - $sqlStelle = "SELECT avg(commenti.voto) as stelle
415 + /*$sqlStelle = "SELECT avg(commenti.voto) as stelle
309 416 FROM commenti
310 417 WHERE commenti.id_locale=".$id_local."
311 - GROUP BY commenti.id_locale";
418 + GROUP BY commenti.id_locale";*/
312 419
313 420 //echo "<br/>".$sqlStelle."<br/>";
314 421
315 - $resultStelle = $this->db->query($sqlStelle);
422 + $sqlStelle = "SELECT avg(commenti.voto) as stelle FROM commenti WHERE commenti.id_locale=:id_locale GROUP BY commenti.id_locale";
423 +
424 + $stmt = $this->db->prepare($sqlStelle);
425 + $stmt->bindParam(':id_locale', $id_local);
426 + $resultStelle = $stmt->execute();
427 +
428 + //$resultStelle = $this->db->query($sqlStelle);
316 429
317 - $local->stelle = ($resultStelle->rowCount()>0) ? $resultStelle->fetchColumn() : 0;
430 + //$local->stelle = ($resultStelle->rowCount()>0) ? $resultStelle->fetchColumn() : 0;
431 + $local->stelle = ($stmt->rowCount()>0) ? $stmt->fetchColumn() : 0;
318 432
319 433 return $local;
320 434
  @@ -325,9 +439,13 @@
325 439 }
326 440
327 441 public function deleteImage($id_local, $img) {
328 - $sql = "DELETE FROM immagini_locali WHERE id_locale=".$id_local." AND img='".$img."'";
442 + //$sql = "DELETE FROM immagini_locali WHERE id_locale=".$id_local." AND img='".$img."'";
443 + $sql = "DELETE FROM immagini_locali WHERE id_locale=:id_locale AND img=:img";
329 444 try {
330 - $this->db->exec($sql);
445 + $stmt = $this->db->prepare($sql);
446 + $stmt->bindParam(':id_locale', $id_local);
447 + $stmt->bindParam(':img', $img);
448 + $stmt->execute();
331 449 return 0;
332 450 } catch (PDOException $e) {
333 451 echo $e->getMessage();
  @@ -401,18 +519,25 @@
401 519 public function getLocalsByUser($user_id) {
402 520 $local_list = array();
403 521
404 - $sql = "SELECT id, lat, lon, indirizzo, tipologia, nomelocale, telefono, email, sito, descrizione, n_punti_ricarica
522 + /*$sql = "SELECT id, lat, lon, indirizzo, tipologia, nomelocale, telefono, email, sito, descrizione, n_punti_ricarica
405 523 FROM locale
406 - WHERE id_utente_owner=".$user_id;
524 + WHERE id_utente_owner=".$user_id;*/
407 525
408 526 //echo "<br/>".$sql."<br/>";
409 527
528 + $sql = "SELECT id, lat, lon, indirizzo, tipologia, nomelocale, telefono, email, sito, descrizione, n_punti_ricarica
529 + FROM locale
530 + WHERE id_utente_owner=:id_utente_owner";
531 +
410 532 try {
411 - $query = $this->db->query($sql);
533 + $stmt = $this->db->prepare($sql);
534 + $stmt->bindParam(':id_utente_owner', $user_id);
535 + $query = $stmt->execute();
536 + //$query = $this->db->query($sql);
412 537
413 538 if (!$query) return null;
414 539
415 - $rows = $query->fetchAll(PDO::FETCH_ASSOC);
540 + $rows = $stmt->fetchAll(PDO::FETCH_ASSOC);
416 541
417 542 foreach ($rows as $row) {
418 543 $local = array();