PHP显示在错误的页面上

时间:2019-07-01 11:17:03

标签: javascript php html ajax

我最近正在从事一个网站项目。因此,我有一个包含所有html代码的website.php,一个function.php和saveArray.js。在website.php中,我正在打印一个带有底部按钮的html表。通过单击按钮,我进入saveArray.js,在其中将所有表数据保存在数组中。

使用此代码

var arrString = JSON.stringify(tableData);  
var request = new XMLHttpRequest();
   request.open('post', 'function.php', true);
   request.setRequestHeader('Content-Type', 'application/x-www-form- 
   urlencoded');
   request.send('daten=' + arrString);

我将JS数组发布到function.php。在function.php中,我对数组做一些事情,并且在if语句中我想显示一个模态。

模式本身可以工作,但是我想在website.php页面上显示它。不会发生这种情况,因为我目前正在使用function.php。

我该如何解决?

编辑:在我的数组中是一个ID,我想检查此ID是否已在数据库中。根据此结果,我想显示模态并在必要时上传数据。所有检查都在function.php中进行

2 个答案:

答案 0 :(得分:0)

我想您想将函数返回的字符串(模式PHP代码)注入当前页面(“ website.php”)中的function.php中。 为此,您必须在请求完成后注入XMLHttpRequest给出的响应。

假设我们要在

中添加所有内容
  xhttp.onreadystatechange = function() {
    if (this.readyState == 4 && this.status == 200) {
      document.getElementById("demo").innerHTML =
      this.responseText;
    }
  };

答案 1 :(得分:0)

看,您不处理请求的响应,因此处理响应,并从function.php恢复请求的状态,如果数据已保存,请打开模型。您无需转到function.php页面。查看代码

   var xhttp = new XMLHttpRequest();
          xhttp.onreadystatechange = function() {
            if (this.readyState == 4 && this.status == 200) {

             // this is response of the request  //now check it

             //Suppose you returned " data saved" as response from function.php

             if(this.responseText='data saved'){
            //Open model here
    }

            }
          };
          xhttp.open("POST", "function.php", true);
          xhttp.send();