Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript文件中存储PHP/MySQL变量?_Javascript_Php_Mysql_Xml_Google Maps - Fatal编程技术网

如何在Javascript文件中存储PHP/MySQL变量?

如何在Javascript文件中存储PHP/MySQL变量?,javascript,php,mysql,xml,google-maps,Javascript,Php,Mysql,Xml,Google Maps,我需要根据用户搜索的内容将一些标记加载到嵌入式谷歌地图中。标记由MySQL表格中的lng/lat坐标确定 映射是在单独的Javascript文件(因此不嵌入HTML)中的Javascript函数中创建的,它将XML文件作为输入。我创建了一个PHP页面(称为'xml.PHP'),它可以根据用户搜索的内容动态生成所需的xml文件。现在我正在Javascript函数中手动输入POST信息,因此它调用'xml.php?query=hello' 我希望以某种方式将原始查询发送到Javascript文件,以

我需要根据用户搜索的内容将一些标记加载到嵌入式谷歌地图中。标记由MySQL表格中的lng/lat坐标确定

映射是在单独的Javascript文件(因此不嵌入HTML)中的Javascript函数中创建的,它将XML文件作为输入。我创建了一个PHP页面(称为'xml.PHP'),它可以根据用户搜索的内容动态生成所需的xml文件。现在我正在Javascript函数中手动输入POST信息,因此它调用'xml.php?query=hello'

我希望以某种方式将原始查询发送到Javascript文件,以便将其附加到“xml.php”的末尾。这样,从原始搜索到生成xml文件,再读取xml文件以创建标记,一切都会自动完成

我见过当Javascript嵌入到标记中时非常简单的解决方案,但我试图避免这种情况

下面是我调用XML文件的函数:

function downloadUrl(url, callback) {
    var request = window.ActiveXObject ?
        new ActiveXObject('Microsoft.XMLHTTP') :
        new XMLHttpRequest;

    request.onreadystatechange = function() {
      if (request.readyState == 4) {
        request.onreadystatechange = doNothing;
        callback(request, request.status);
      }
    };

    request.open('GET', url, true);
    request.send(null);
  }

function doNothing() {}
XML信息将根据用户最初搜索的内容进行更改。因此,它实际上是一个php文件(xml.php),它执行SQL搜索并以xml格式进行响应。我可以通过在调用xml.php时添加POST信息来控制SQL搜索

downloadURL('xml.php?query=whatever', somefunction())
但附加的POST数据也需要是动态的。 因此,总体流程是:


搜索页面-->将数据发送到结果页面,结果页面调用Javascript文件创建地图-->Javascript文件调用XML信息将地图放入结果页面

可以给我们看一些代码吗

你试过本地存储吗

// Store
localStorage.setItem("lastname", "Smith");
// Retrieve
document.getElementById("result").innerHTML = localStorage.getItem("lastname");
您可以使用它来设置一些信息,然后使用ajax调用post方法

但是,只有当您想在会话中保留一些数据时,它才有用


引用:并且

您正在寻找AJAX。@SLaks我想我现在正在使用AJAX实现。我唯一的问题是,我找到的所有教程都在某种输入框上使用document.getElementByID。在我的示例中,我已经发送了表单,现在我需要获取Javascript文件的信息发布在URLHey Celso中,感谢您的回答。我已经添加了一些关于我的情况的更多信息。我一直在努力避免在DOM中添加额外的值,只是为了用JS文件将它们取出。有没有一种方法可以将POST数据从搜索页面直接获取到JS文件(由结果页面调用)中?正如我所知,POST数据只由服务器端()处理。我相信这是不可能的,除非您有一些服务器端代码将其发送到javascript。