ajax to php $variable



我尝试将此值传递给我的php代码,但我不知道该怎么做。 开机自检方法不起作用。(我不知道为什么(。

<script>
var val = localStorage.getItem('sumalist');
$.ajax({
type: "POST",
url: "index.php",
data: {value: val},
success: function () {
console.log(val);
}
});
</script>

在我的 PHP 代码中,没有设置值。

if (isset($_POST["value"])) {
echo "Yes, value is set";
$value = $_POST["value"];
}else{
echo "N0, value is not set";
}

PS:我的php代码在js代码的同一个文件中。

检查这是否有效

<?php
if(!empty($_POST)) {
$value = (isset($_POST["value"])) ?  $_POST["value"] : NULL;
$return = ($value != NULL) ? "Yes, value is: ".$value : "N0, value is not set";
echo $return;
exit;
}
?>
<script src="//code.jquery.com/jquery-3.3.1.js"></script>
<script>
var val = 'value sent';
$.ajax({
type: "POST",
url: "index.php",
data: {value: val},
success: function (ret) {
console.log(ret);
}
});
</script>
Open console for result

如果您使用的是 chrome,请使用控制台,然后打开控制台并尝试调试, 首先,你在jquery就绪函数中运行ajax函数,如下所示

$(document).ready(function (){ $.ajax( replaced for ajax function ) }

如果要在回调成功函数中使用响应,请使用以下命令:

success: function (ret) {
console.log(ret); //Prints 'Yes, value is set' in browser console
}

在浏览器中,您有开发人员工具 - 按 F12 打开,转到网络选项卡(FireFox、Chrome、IE - 都一样(,然后重新加载您的页面,您将看到 AJAX 调用的行(如果在加载时执行,或者如果不是这种情况,则触发您的调用(,选择它,右手您将看到一个额外的框架,您可以在其中查看请求的所有详细信息, 包括请求参数、标头、响应标头、实际响应和许多其他参数。

这是检查您的 AJAX 请求的最佳解决方案,而无需询问未完成的问题并寻求答案,以防有人可以在他的脑海中组装您的完整案例。

相信我 - 这对您来说是最好的解决方案,而不仅仅是这种情况!

当然,你的JS应该在DOM准备好的时候执行,所以你必须把它包装在

${function() {
// your code here 
}); 

如果您想在加载时执行。

最新更新