javascript - 使用 php 在 ajax 中发布让我未定义的索引
问题描述
我想通过(ajax到php)将数据从客户端发送/传递到服务器但是当我尝试这段代码时
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script type="text/javascript">
$.ajax({
type: 'post',
url: 'loo.php',
data: { data: 'some data' },
success: function(response,w) {
console.log(w);
}
});
</script>
<?php
echo $_POST['data'];
?>
在我的浏览器中我得到了success
打印出来,这意味着我猜想 javascript 代码工作正常,在 php 中我得到了Undefined index
ps 我的文件名是loo.php
所有代码都在同一个文件中
编辑:我试图像这样分离我的文件:
我的 loo.php 文件:
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script type="text/javascript">
$.ajax({
type: 'post',
url: 'test.php',
data: {data: 'some data'},
success: function (response, w) {
console.log(w);
}
});
</script>
我的 test.php 文件:
<?php
echo $_POST['data'];
?>
仍然有未定义的索引
ps 我在运行 loo.php 文件后将手册导航到 test.php 文件
解决方案
您收到此错误是因为在加载页面时尚未发送 POST 请求。因此,仅在提交data
时才显示提交,否则显示 JavaScript 代码。
<?php
if (isset($_POST['data'])) {
die($_POST['data']);
}
?>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
<script type="text/javascript">
$.ajax({
type: 'post',
url: 'loo.php',
data: {data: 'some data'},
success: function (response, w) {
console.log(w);
}
});
</script>
推荐阅读
- python - 无法在 Windows 上安装 Thinbgsboard IoT Gateway
- c++ - 如何用 QtCharts 绘制非连续的时间序列轴?
- matlab - 没有工具箱的Matlab中的模数
- python - 在不使用 max 或 count 函数的情况下查找最大值并计算它在列表中出现的次数
- javascript - React 中标题(H1、H2、H3、H4、H5、H6)组件的组合与继承
- python - 如何在(反向?)观察者模式中注册事件处理程序?
- vba - 如何在模块中使用表单控件
- java - 在Java中循环时如何根据单词的长度定义猜测次数?
- python - 在多个页面上识别 Python Selenium Webdriver 的站点
- javascript - 未捕获(承诺)类型错误:无法读取未定义的属性“拆分”?下一个使用 React-Router 的应用