如何将提取的PHP数据转换为包含整数的javascript数组 [英] How to convert extracted PHP data to javascript array containing integer

查看:71
本文介绍了如何将提取的PHP数据转换为包含整数的javascript数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

从mysql中提取数据并在javascript中使用它们,而不是带整数的数组我得到一个带引号的字符串,如下所示:



 var latlong = [[38.4870556,68.8065556],[38.7059167,69.2994444]];





我尝试过:



这里用PHP提取数据:

试试{
$ db = new PDO(mysql:host = $ servername; dbname = $ dbname,$ username,$ password,array(
PDO :: MYSQL_ATTR_INIT_COMMAND =>SET NAMES utf8,
PDO :: ATTR_DEFAULT_FETCH_MODE = > PDO :: FETCH_OBJ,
PDO :: ATTR_ERRMODE => TRUE
));

} catch(PDOException $ e){
die($ e-> getMessage());
}

$ stmt = $ db-> prepare(SELECT纬度,经度FROM hydros WHERE纬度<> 0);
$ stmt-> execute();

$ data = [];

$ result = $ stmt-> fetchAll();
foreach($ result as $ row){
$ data [] = [(float)$ row-> latitude,(float)$ row-> longitude];
}

echovar latlong =。 (!empty($ data)?json_encode($ data):])。 ;;





然后用jQuery检索数据

函数latlongc(回调){
httpRequest = new XMLHttpRequest();
httpRequest.onreadystatechange = function(){
if(httpRequest.readyState === 4){//请求完成
if(httpRequest.status === 200){//成功
回调(httpRequest.responseText); //我们正在调用我们的方法
}
}
};
httpRequest.open('GET',latlong.php);
httpRequest.send();
}

latlongc(函数(结果){

latlong1 =结果;
console.log(latlong1);
});

解决方案

db = new PDO(mysql:host =


servername; dbname =

DBNAME,

Extracting data from mysql and using them in javascript, instead of an array with integer I get a string with quotes like this:

"var latlong = [[38.4870556,68.8065556],[38.7059167,69.2994444]];"



What I have tried:

Here extracting data with PHP:

try {
    $db = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password, array(
        PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8",
        PDO:: ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_OBJ,
        PDO:: ATTR_ERRMODE => TRUE
    ));

} catch(PDOException $e) {
    die($e->getMessage());
}

$stmt = $db->prepare("SELECT latitude, longitude FROM  hydros WHERE latitude <> 0");
$stmt->execute();

$data = [];

$result = $stmt->fetchAll();
foreach ($result as $row) {
    $data [] = [(float)$row->latitude,(float)$row->longitude];
}

echo "var latlong = " . (!empty($data) ? json_encode($data)  : "]") . ";";



Then retrieving data with jQuery

	function latlongc(callback) {
    httpRequest = new XMLHttpRequest();
    httpRequest.onreadystatechange = function () {
        if (httpRequest.readyState === 4) { // request is done
            if (httpRequest.status === 200) { // successfully
                callback(httpRequest.responseText); // we're calling our method
            }
        }
    };
    httpRequest.open('GET', "latlong.php");
    httpRequest.send();
}

	latlongc(function (result) {
    
    latlong1 = result;
    console.log(latlong1);
});

解决方案

db = new PDO("mysql:host=


servername;dbname=


dbname",


这篇关于如何将提取的PHP数据转换为包含整数的javascript数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆