[英]xmlhttprequest not passing variable from javascript to php
I am make an interactive map in D3. 我在D3中制作了一个交互式地图。 I stored all data in MySQL database.
我将所有数据存储在MySQL数据库中。 Since the user is able to select year to see all data, I have to pass the year to server side(php) to query about the data of the specific year.
由于用户可以选择年份来查看所有数据,因此我必须将年份传递给服务器端(php)以查询特定年份的数据。
I do not know specific function in D3.js to help us pass variables to php, so I use XMLHTTP to send information to php. 我不知道D3.js中的特定函数来帮助我们将变量传递给php,所以我使用XMLHTTP将信息发送到php。
My javascript: 我的javascript:
a = "ARGGDP"
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", "database/allcountry.php?a=a", true);
xmlHttp.addEventListener("load", ajaxCallback, false);
xmlHttp.send(null);
function ajaxCallback(event){
alert( "loaded");
}
My php 我的PHP
header("Content-Type: application/json"); header(“Content-Type:application / json”);
$a = $_GET['a'];
$username = "root";
However, it shows "Undefined index: a". 但是,它显示“Undefined index:a”。 Any idea about what should I do to fix this problem?
有什么想法我应该怎么做才能解决这个问题?
You missed a ; 你错过了; at the end of your var "a" and didn't add the var to your url.
在你的var“a”的末尾,并没有将var添加到你的网址。
a = "ARGGDP";
var xmlHttp = new XMLHttpRequest();
xmlHttp.open("GET", "database/allcountry.php?a="+a, true);
xmlHttp.addEventListener("load", ajaxCallback, false);
xmlHttp.send();
function ajaxCallback(event){
alert( "loaded");
}
PHP PHP
echo "<pre>";
print_r($_GET);
echo "</pre>";
You can use following; 你可以使用以下;
function sendAjax(data) {
var xmlhttp;
if (window.XMLHttpRequest) {
xmlhttp=new XMLHttpRequest();
} else {
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function() {
if (xmlhttp.readyState==4 && xmlhttp.status==200) {
alert("loaded")
}
}
xmlhttp.open("GET","database/allcountry.php?a=" + data,true);
xmlhttp.send();
}
sendAjax("ARGGDP");
In php 在PHP中
$a = $_GET['a'];
echo $a;
您的ajax请求正在运行, undefined index: a
通知意味着$_GET
变量没有键' a
',也许您正在代码中的某处修改$ _GET?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.