Browse Source

Oracle rest api ok

boutils 10 years ago
parent
commit
92105c48a7
1 changed files with 56 additions and 52 deletions
  1. 56 52
      ajax/oracle.php

+ 56 - 52
ajax/oracle.php

@@ -1,68 +1,72 @@
 <?php
-error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
+  error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
 
-$db = "(DESCRIPTION =
-          (ADDRESS_LIST =
-            (ADDRESS = (PROTOCOL = TCP)(HOST = P-BDD-16)(PORT = 1521))
-          )
-          (CONNECT_DATA =
-            (SERVICE_NAME = SIGCG50)
-          )
-        )";
+  $db = "(DESCRIPTION =
+            (ADDRESS_LIST =
+              (ADDRESS = (PROTOCOL = TCP)(HOST = P-BDD-16)(PORT = 1521))
+            )
+            (CONNECT_DATA =
+              (SERVICE_NAME = SIGCG50)
+            )
+          )";
 
+  // Connexion au service
+  $conn = oci_connect('ELIGIBILITE_R', 'H6nmb0KCwR', $db);
 
-// Connexion au service
-$conn = oci_connect('ELIGIBILITE_R', 'H6nmb0KCwR', $db);
+  // Execute query
+  function executeQuery($conn, $query) {
 
-if (!$conn) {
-    $e = oci_error();
-    echo 'Not connected';
-    echo trigger_error(htmlentities($e['message'], ENT_QUOTES), E_USER_ERROR);
-}
+    $stid = oci_parse($conn, $query);
 
+    if (!$stid) {
+      $e = oci_error($conn);
+      $error['error'] = $e;
+      return $error;
+    }
 
-$x = -1.109669152209201;
-$y = 49.102353729303125;
+    $r = oci_execute($stid);
 
-$queryFTTH = "Select FTTH.Id_Zapm_Partielle, FTTH.DATE_OUV_SERVICE_REEL, FTTH.DATE_OUV_SERVICE_PREV, FTTH.DATE_FIN_TRAV_PREV From SIG_ANT.Ftth_Mn_Zapm_Partielle FTTH WHERE SDO_CONTAINS(FTTH.GEOMETRY, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+    if (!$r) {
+      $e = oci_error($stid);
+      $error['error'] = $e;
+      return $error;
+    }
 
-$queryADSL = "Select ADSL.ID_FT_ADSL, ADSL.LEGENDE, ADSL.NATURE From SIG_REFERENTIEL.TEL_FT_ADSL ADSL WHERE SDO_CONTAINS(ADSL.GEOM, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+    while ($row = oci_fetch_array($stid, OCI_RETURN_NULLS+OCI_ASSOC)) {
+        $res[] = $row;
+    }
+    return $res;
+  }
 
-$queryMIMO = "Select A.ID_MIMO_ANTC_COUVERTURE_SSS, A.DATE_OUV_SERVICE_REEL, A.DATE_OUV_SERVICE_PREV From SIG_ANT.MIMO_ANTC_COUVERTURE_SSS A  WHERE SDO_CONTAINS(a.GEOM, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+  // Get parameters
+  if($_POST["x"] && $_POST["y"]) {
+    $x = floatval($_POST["x"]);
+    $y = floatval($_POST["y"]);
+  }
+  else if($_GET["x"] && $_GET["y"]) {
+    $x = floatval($_GET["x"]);
+    $y = floatval($_GET["y"]);
+  }
+  else {
+    $x = -1.109669152209201;
+    $y = 49.102353729303125;
+  }
 
-$query = $queryADSL;
+  // Append X,Y to results
+  $results[x] = $x;
+  $results[y] = $y;
 
-$stid = oci_parse($conn, $query);
+  // Get FTTH results
+  $queryFTTH = "Select FTTH.Id_Zapm_Partielle, FTTH.DATE_OUV_SERVICE_REEL, FTTH.DATE_OUV_SERVICE_PREV, FTTH.DATE_FIN_TRAV_PREV From SIG_ANT.Ftth_Mn_Zapm_Partielle FTTH WHERE SDO_CONTAINS(FTTH.GEOMETRY, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+  $results['ftth'] = executeQuery($conn, $queryFTTH);
 
-if (!$stid) {
-  echo '<div style="color:red;">';
-  $e = oci_error($conn);  // Pour les erreurs oci_parse, passez le gestionnaire de connexion
-  trigger_error(htmlentities($e['message']), E_USER_ERROR);
-  echo '</div>';
-}
+  // Get ADSL results
+  $queryADSL = "Select ADSL.ID_FT_ADSL, ADSL.LEGENDE, ADSL.NATURE From SIG_REFERENTIEL.TEL_FT_ADSL ADSL WHERE SDO_CONTAINS(ADSL.GEOM, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+  $results['adsl'] = executeQuery($conn, $queryADSL);
 
-$r = oci_execute($stid);
-if (!$r) {
-    echo '<div style="color:red;">';
-    $e = oci_error($stid);  // Pour les erreurs oci_execute, passez le gestionnaire de connexion
-    print htmlentities($e['message']);
-    print "\n<pre>\n";
-    print htmlentities($e['sqltext']);
-    printf("\n%".($e['offset']+1)."s", "^");
-    print  "\n</pre>\n";
-    echo '</div>';
-}
-
-//echo "<table border='1'>\n";
-while ($row = oci_fetch_array($stid, OCI_RETURN_NULLS+OCI_ASSOC)) {
-    print_r($row);
-    echo '<hr>';
-    //echo "<tr>\n";
-    //foreach ($row as $item) {
-    //    echo "    <td>" . ($item !== null ? htmlentities($item, ENT_QUOTES) : "") . "</td>\n";
-    //}
-    //echo "</tr>\n";
-}
-//echo "</table>\n";
+  // Get MIMO results
+  $queryMIMO = "Select A.ID_MIMO_ANTC_COUVERTURE_SSS, A.DATE_OUV_SERVICE_REEL, A.DATE_OUV_SERVICE_PREV From SIG_ANT.MIMO_ANTC_COUVERTURE_SSS A  WHERE SDO_CONTAINS(a.GEOM, Mdsys.Sdo_Geometry(2001,4326,Mdsys.Sdo_Point_Type(".$x.", ".$y.", Null), Null, Null)) = 'TRUE'";
+  $results['mimo'] = executeQuery($conn, $queryMIMO);
 
+  echo json_encode($results);
 ?>