从php脚本获取数据到javascript并使用它

从php脚本获取数据到javascript并使用它,javascript,php,jquery,html,cordova,Javascript,Php,Jquery,Html,Cordova,我读了很多书,但我不能把它放在一起…非常难对付,我只是一个初学者(他们甚至说要使用AJAX…哇!)。你能帮我们吗 我的情况是: 我已经在php脚本上存储了htdocs xampp apache服务器 我在另一个文件夹中有一组html/javascript代码(这是一个cordova应用程序) 我想从主体的onload事件调用我的php脚本 理想情况下,我想做: function init(){ // some instructions var myvar; myvar = result

我读了很多书,但我不能把它放在一起…非常难对付,我只是一个初学者(他们甚至说要使用AJAX…哇!)。你能帮我们吗

我的情况是:

  • 我已经在php脚本上存储了htdocs xampp apache服务器
  • 我在另一个文件夹中有一组html/javascript代码(这是一个cordova应用程序)
我想从主体的onload事件调用我的php脚本

理想情况下,我想做:

function init(){

// some instructions
var myvar;

myvar = result of execution of my_php_script;

//using myvar in some other instructions

}
你可以在我的JS的最后几行看到我打算如何使用上面描述的“代码”

我当前的HTML

<body onload="init();">

<div id="map">
</div>

</body>

我现在的JS

function init(){
var mymap = L.map('mapid').setView([51.505, -0.09], 13);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}', {
    attribution: 'Map data &copy; <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>',
    maxZoom: 18,
    id: 'your.mapbox.project.id',
    accessToken: 'your.mapbox.public.access.token'
}).addTo(mymap);
}

var myvar = result of execution of php script (a table)
var marker = L.marker([myvar[0][1], myvar[0][2]]).addTo(mymap);

}
函数init(){
var mymap=L.map('mapid').setView([51.505,-0.09],13);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={accessToken}'{
属性:“地图数据©;贡献者,图像©”,
maxZoom:18,
id:'your.mapbox.project.id',
accessToken:'your.mapbox.public.access.token'
}).addTo(mymap);
}
var myvar=php脚本执行的结果(一个表)
var marker=L.marker([myvar[0][1],myvar[0][2]]).addTo(mymap);
}
我当前的php(这个php脚本现在运行良好。我想在javascript变量myvar中返回$row)


将问题分解。首先,您需要以JavaScript能够理解的格式对PHP数据进行编码。实现这一点的一个好方法是通过JSON_编码


接下来,需要从JavaScript向PHP脚本发出HTTP请求。为此,您可以使用Jquery ajax函数,并将数据类型设置为JSON。

欢迎使用SO。请访问并查看,看看这个问题是如何过于宽泛,从而偏离主题的。编写一个响应“ok”的小php,并从一个简单的jQuery调用它。
$获取
,看看它是如何工作的。我也可能建议使用jQuery for ajax,因为它更容易使用。简单地提到ajax并不是很完整,因为它是异步的
<?php

ini_set('display_errors', 1); 
ini_set('display_startup_errors', 1); 
error_reporting(E_ALL);

  try {
    $hostname = "SQLSERVER_INSTANCE_1";
    $port = 1433;
    $dbname = "MY_BD";
    $username = "user";
    $pw = "pass";
    $dbh = new PDO ("sqlsrv:Server=$hostname,$port;Database=$dbname","$username","$pw");
    $dbh->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );
   } catch (PDOException $e) {
    echo "Failed to get DB handle: " . $e->getMessage() . "\n";
    exit;
  }


 $sth = $dbh->prepare("SELECT * FROM dbo.COORD");
 $sth->execute();


 /*while($row = $sth->fetch(PDO::FETCH_ASSOC)){
print $row['lat']. "<br/>";
 }*/

$row = $sth->fetch(PDO::FETCH_ASSOC);

echo $row['lat'];


?>