示例#1
0
    getLayerAttr($layersList);
    break;

  case 'getAllLayers':
    require_once("MultiLayerSearch.php");
    getAllLayers();
    break;

  case 'getLayerName':
    require_once("MultiLayerSearch.php");
    $layer='';
    $json_arr=Array();
    if (isset($_REQUEST['layer'])) {
      $layer=$_REQUEST['layer'];
    }
    $layer_name=getLayerName($layer);
    $json_arr['name']=$layer_name;
    $json_arr['layer']=$layer;
    $encoded=json_encode($json_arr);
    print $encoded;
    break;

  case 'getBoxLayers':
    require_once("MultiLayerSearch.php");
    $bbox="";
    if (isset($_REQUEST['bbox'])) {
      $bbox=$_REQUEST['bbox'];
    }
    else {
      die(return_error('Required parameters are not set'));
    }
示例#2
0
function getBBOXSearchData($bbox,$layersList){
	$json_arr1 = array();
	$count = count($layersList);
	  for($i=0; $i<$count; $i++) {
	    $json_arr2 = array();
	    $json_rowIter = 0;
	    $query = "SELECT column_name FROM information_schema.columns WHERE table_name='".$layersList[$i]."' AND column_name not like '__mlocate___%'";
	    $result_db = db_query($query);
	    $temp="";
	    while ($result = db_fetch_object($result_db)) {
	      $temp='"'.$result->column_name.'",'.$temp;
	    }
	    $col_list = rtrim($temp,",");
	    $col_list .= ',"'.AUTO_DBCOL_PREFIX.'id"';
		$query = "SELECT ".$col_list." FROM ".$layersList[$i]." WHERE ".AUTO_DBCOL_PREFIX."topology @ setSRID('BOX3D(".trim($bbox,"\"").")'::box3d, (select srid from geometry_columns where f_table_name = '".$layersList[$i]."'))";

	      $result_db = db_query($query);

	      while ($result = db_fetch_object($result_db)) {
	        $col_list_sp = split(",",$col_list);
	        $col_list_sp = str_replace('"','' ,$col_list_sp );
	        foreach ($col_list_sp as $col_name) {
	          $json_arr2[$col_name][$json_rowIter] = $result->$col_name;
	        }
	        $json_rowIter++;
	      }

		$lyr_name = getLayerName($layersList[$i]);
	    $json_arr1[$layersList[$i].":". $lyr_name] = $json_arr2;

	  }
  $encoded = json_encode($json_arr1);
  echo $encoded;
}