是否应该获取来运行PHP文件的内容?

问题描述 投票:1回答:1

我正在尝试使用fetch而不是xmlhttprequest,但是fetch无法以类似的ajax系统的方式工作,或者至少,我无法以相同的方式使它工作。我有以下代码:

addAction("pressBTN", "click", function() {
  const data = new FormData();
  data.append('dset1', theElement("dataINP1").value);
  data.append('dset2', theElement("dataINP2").value);
  /* for (var pair of data.entries()) {
  console.log(pair[0]+ ', '+ pair[1]); 
  } */
  fetch('./files/php/scripts/dataEntery.php', {
      method: 'POST',
      body: data
    })
    .then(response =>
      if (!response.ok) {
        throw new Error('Unknown Error #4: nice way to mess it up');
      } else {
        console.log(response);
      }
    }).catch((err) => {
  console.log(err);
});
}, true);

请注意,theElement和addAction仅使我不必输入内容

document.getElementById

document.addEventListener

一遍又一遍。

此过程返回,并且响应正常。凉!除非php文件中的任何内容都没有运行。

使用先前的系统xmlhttprequest,它调用了php文件,运行其内容并返回。在该PHP中,我可以根据数据库检查值,并且您知道服务器的工作。

我已经尝试将php文件移动到与javascript文件相同的位置。没有。我确保数据值格式正确,但注释代码中仍然存在。

我尝试了json,因为那里的每个教程都显示json。仍然没有用。甚至没有最简单的命令,如

<?php
   print_r($_POST);
   echo “balls!”;
?>

在php文件中有效。老实说,我不知道为什么。看起来代码应该对我有用。也许我在这里缺少什么。

除了将两个输入设置为文本和一个按钮的HTML外,项目中没有其他代码。这看起来像它应该工作。控制台记录响应时将返回以下内容:

body: ReadableStream
statusText: “OK”
json: (function)
redirected: false
text: (function)
status: 200
bodyUsed: false
url: “goodurlpath/files/php/scripts/dataentry.php”
type: “basic”
blob: (function)
arrayBuffer: (function)
formData: (function)
headers: Headers
value: (function)
keys: (function)
delete: (function)
forEach: (function)
entries: (function)
get: (function)
append: (function)
set: (function)
has: (function)
clone: (function)
ok: true

我想知道PHP是否应该与fetch一起运行!?

感谢您提供有关为什么不在此处运行php的任何帮助。

javascript php fetch
1个回答
0
投票

您上面记录的是Response对象。要实际获取流并阅读它以完成操作,还需要执行另一个步骤。

如果将Response请求更新为以下内容,则它应该可以使用:

fetch
© www.soinside.com 2019 - 2024. All rights reserved.