我 尝试 向 php 文件 发送 ajax POST , 然而 php 文件 发送 了 一 个 " 未 定义 索引 " 的 通知 , 而且 php 文件 似乎 从来 没有 收到 我 试图 发送 的 值 。 我 一直 在 寻找 为什么 这 不能 正常 工作 的 答案 , 所以 希望 有人 能 给 我 一些 见解 。
我 的 javascript 函数 从 html 接收 一 个 值 , 并且 接收 到 正确 的 值 。 ( 在 本 例 中 是 " 1 " )
function deleteMediaFromDatabase(val)
{
$.ajax({ url: 'deleteMediaFromDatabase.php',
data: {vals : val},
type: 'post',
success: function(output) {
alert(output);
},
error: function(request, status, error){
alert("Error: Could not delete");
}
});
}
中 的 每 一 个
下面 是 我 的 php 文件 的 一 部分 , 应该 收到 后 :
<?php
ini_set("display_errors", "On");
error_reporting(E_ALL);
$val = $_POST["vals"];
// create connection
$con = mysqli_connect(<stuff you don't care about>);
error_log($val . ' is the value', 3, "./error.log");
?>
格式
但是 , 我 从 php 得到 这个 错误 信息 :
注意 : 未 定义 的 索引 :第 9 行 上 的/xxx/xxx/htdocs/管理 面板/从 数据 库 中 删除 媒体 . php 中 的 值
我 的 javascript 总是 在 错误 中 输出 警告 :" 错误 : 无法 删除 "
我 知道 这个 问题 已经 被 问 过 很多 次 了 , 但是 除非 我 跳过 一些 小 的 东西 , 否则 我 的 代码 对 我 来说 看 起来 是 正确 的 。 ( 但是 它 不 总是 ... )
5条答案
按热度按时间gstyhher1#
jquery的语法有错误,遗漏了数据的语法,应该是这样的-
lzfw57am2#
此问题可能是由于未指定dataType或指定的dataType不匹配而导致服务器返回。
明确设置dataType,例如
dataType:'json'
并确保您的脚本返回的数据是以您选择的数据类型“编码”的,例如在PHP中:
echo json_encode($something);
ep6jt1vc3#
而不是:
使用以下命令:
f87krz0w4#
更改 AJAX 语法...
vnzz0bqm5#
中 的 每 一 个
我 遇到 了 同样 的 问题 , 我 试 着 声明 变量 为 全局 变量 , 这 解决 了 我 的 问题 。
格式
并 始终 检查
isset($_POST["vals"])