作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试制作一个 chrome 扩展,它将从某些网站(当我访问该页面时)中删除文本数据并将其保存在 SQL 数据库中。用于数据抓取的js工作正常,它可以将我需要的所有数据保存在字符串中。现在我想将该 js 字符串发送到我使用 XAMPP 的本地主机 php 文件,但看起来 php 无法接收我发送的字符串。
我的用于发送数据的 js 代码片段
$.post("http://localhost:8080/naukri/index.php", //link to localhost php
{variable: finalVal}, //finalVal contains the string I want to send
function(data) {if (data != "") {
alert('We sent Jquery string to PHP : ' + data); //alert shows the string I am sending
window.open("http://localhost:8080/naukri/index.php"); //open php page to confirm if data received or not
console.log(data); //SOLVED use this instead of window.open()
}
});
我的PHP代码
$test;
$test = $_POST['variable'];
echo $test; //just checking if string received or not, I will worry about inserting into SQL later.
现在警报显示了我尝试发送的正确字符串,但 php 页面显示了此错误
" Notice: Undefined index: variable in C:\xampp\htdocs\naukri\index.php on line 4"
我认为这意味着 php 文件尚未收到我发送的字符串。
请告诉我如何成功地将字符串从js发送到php。
最佳答案
您的问题是您打开并调用您的 php 文件两次。
这两个对文件的调用是完全独立的,因此第一个请求中传递的数据在第二个请求中不可用,因为 php 是无状态的。
如果您想检查您的 Web 扩展是否与您的 php 一起正常工作,您必须检查 ajax 请求实际返回的内容,而不是再次调用该页面。打开浏览器开发者工具的网络选项卡进行检查。
关于javascript - 如何将 js 字符串从 chrome 扩展内容脚本发送到 php,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48960800/
我是一名优秀的程序员,十分优秀!