ajax返回一个空请求(未定义的索引)[重复]
Posted
技术标签:
【中文标题】ajax返回一个空请求(未定义的索引)[重复]【英文标题】:ajax returns a null request (Undefined index) [duplicate] 【发布时间】:2021-12-17 10:11:27 【问题描述】:我有这个简单的 ajax 请求
<script>
$(document).ready(function()
setInterval(() =>
var val1 = $("#id").val();
var val2 = $("#dt").val();
$.ajax(
url: "refreshState.php",
type: "POST",
data: id: val1 , dt:val2
);
, 2000);
);
</script>
还有这个 php 代码
<?php
session_start();
if (isset($_REQUEST))
require_once("./dbConfig.php");
$now=date_create(trim($_REQUEST["dt"],"'"));
$id=$_REQUEST["id"];
$update_login="UPDATE users set login_time=? where id=?";
$update_login=$db->prepare($update_login);
$update_login->bind_param("ss",$now,$id);
$update_login->execute();
?>
当我加载页面时,我收到没有发布请求的错误
未定义索引:6
行 C:\xampp\htdocs\projects\ten\refreshState.php 中的 dt未定义索引:7
行 C:\xampp\htdocs\projects\ten\refreshState.php 中的 id【问题讨论】:
$_REQUEST
将被设置,无论使用if (!empty($_REQUEST))
或更好,因为你知道if (!empty($_POST))
【参考方案1】:
您可以使用 ($_POST) 发布方法
<?php
session_start();
if ($_POST)
require_once("./dbConfig.php");
$now=date_create(trim($_POST["dt"],"'"));
$id=$_POST["id"];
$update_login="UPDATE users set login_time=? where id=?";
$update_login=$db->prepare($update_login);
$update_login->bind_param("ss",$now,$id);
$update_login->execute();
?>
【讨论】:
【参考方案2】:试试 $_POST :
session_start();
if ($_POST)
require_once("./dbConfig.php");
$now=date_create(trim($_POST["dt"],"'"));
$id=$_POST["id"];
$update_login="UPDATE users set login_time=? where id=?";
$update_login=$db->prepare($update_login);
$update_login->bind_param("ss",$now,$id);
$update_login->execute();
【讨论】:
【参考方案3】:你可以试试
<script>
$(document).ready(function()
setInterval(() =>
var val1 = $("#id").val();
var val2 = $("#dt").val();
var object = ;
object.id = val1;
object.dt = val2;
$.ajax(
url: "refreshState.php",
type: "POST",
data: object
);
, 2000);
);
</script>
【讨论】:
以上是关于ajax返回一个空请求(未定义的索引)[重复]的主要内容,如果未能解决你的问题,请参考以下文章