过滤并从Mysql获取数据

时间:2016-09-29 17:44:30

标签: php mysql

我有这张桌子: mysql table

我需要从列“codigo”中获取所有数据的所有数据,其中行codidopostal = 1001.对于这个pourposse,我发送“post”codigopostal = 1001。

rest service

一旦我得到它,那么我需要提取数组中的第一个数据,因为稍后我将使用它来添加一个URI来制作和查询具有xml文件的外部服务器。

我正在建设的uri是:

http://www.aemet.es/xml/municipios/localidad_01059.xml

我做到了。 http://www.aemet.es/xml/municipios/localidad_ +“0”+“codigo”+“。xml

但它不会加我“codigo”。从照片中可以看出,只添加“0”而不是“0”+“codigo”。

result

这里我留下完整的代码,欢迎任何帮助:

<?php

require_once 'login_mysql.php';

if(isset($_POST['postCode']) && !empty($_POST['postCode'])){

$sql = "SELECT alava.codigo FROM alava WHERE alava.codigopostal = '$postCode'";


if (mysqli_connect_error()){
    echo 'Error de Conexión: ' . mysqli_connect_error();
    exit();
}

$r = mysqli_query($con,$sql);
if (!$r){
    echo 'No se pudo hacer la consulta: ' . mysqli_error($con);
    echo json_encode("Registro inexistente");
    exit();
}

$result = array();

while($row = mysqli_fetch_array($r)){

    //Pushing name and id in the blank array created
    array_push($result,array(
        "codigo"=>$row['codigo']

        ));
    $codigo = array_values($result)[0];
}

  echo json_encode(array('result'=>$output_result));

// Close mysql connection
mysqli_close($con);

    }else{
     echo "Operacion fallida";
    }

$json_object = json_decode( json_encode(array('result'=>$result)) );


$localidad = "$codigo";
$cadena1 = "http://www.aemet.es/xml/municipios/localidad_";
$cadena2 = "$localidad";
$cadena3 = ".xml";
$prefijo = "0";
$url=$cadena1 . $prefijo . $cadena2 . $cadena3 ;


$texto = file_get_contents($url);
$texto = str_replace(array("\n", "\r", "\t"), '', $texto);
$texto = trim(str_replace('"', "'", $texto));
$simpleXml = simplexml_load_string($texto);
$json = json_encode($simpleXml);
echo $json;

return $json;               

1 个答案:

答案 0 :(得分:0)

我找到了解决方案 -

首先正确查询表,提取具有特定索引的所有数据。在这种情况下是“codigopostal。

require_once 'login_mysql.php';


if(isset($_POST['postCode']) && !empty($_POST['postCode'])){
$postCode = $_POST['postCode'];

 $sql =
       "SELECT * FROM wp_alava WHERE wp_alava.codigopostal = '$postCode'";

然后我们获取数据并将其输入数组。一旦它进入内部,那么我们采取第一个,因为所有都是重复的,我们只需要一个,因为我们不知道有多少,我们确信有一个是第一个。

    //creating a blank array
 $result = array();

//looping through all the records fetched
 while($row = mysqli_fetch_array($r)){


 array_push($result,array(
//Pushing codigo in the blank array created
        "codigo"=>$row['codigo']
    ));
}

//Displaying the array in json format
 $codigo_poblacion = json_encode(array('result'=>$result));

 $primer_codigo_encontrado = json_decode($codigo_poblacion);

 $primer_codigo_encontrado->result[0]->codigo;
 $codigo_poblacion_aemet = $primer_codigo_encontrado->result[0]->codigo;

然后我们构建我们的URI并发送它的geting数据。因为我们在Json中需要数据,所以我们将其解析为JSon格式,以便稍后在我们的APP或任何其他用户界面中使用。

就是这样,在这里你有一个API来为西班牙天气网建立一个没有提供它的URI,它们只为你提供预测的XML。

此致