Php 通过json.stringify/ajax传递多个参数无效
我已经试着在SO中搜索我的问题的答案,但我找到的所有帖子仍然不能帮助我解决问题。我不知道是我忽略了什么,还是因为我缺乏知识而使我的代码无法工作 我有两个JS提示,要求输入ID,然后输入金额以调整我的库存水平。我希望它将其传递到我的php文件,以运行mysql更新查询 我的剧本:Php 通过json.stringify/ajax传递多个参数无效,php,json,ajax,Php,Json,Ajax,我已经试着在SO中搜索我的问题的答案,但我找到的所有帖子仍然不能帮助我解决问题。我不知道是我忽略了什么,还是因为我缺乏知识而使我的代码无法工作 我有两个JS提示,要求输入ID,然后输入金额以调整我的库存水平。我希望它将其传递到我的php文件,以运行mysql更新查询 我的剧本: <script type="text/javascript"> function sendArray() { var ourObj = {}; ourObj.itemId = prompt("
<script type="text/javascript">
function sendArray()
{
var ourObj = {};
ourObj.itemId = prompt("Scan ID:");
ourObj.adjAmt = prompt("Enter amount:");
alert(ourObj.itemId);
alert(ourObj.adjAmt);
$.ajax({
url: "save.php",
type: "POST",
data: { invAdj : JSON.stringify(ourObj)},
success: function(response)
{
alert("data sent response is "+response);
},
error: function(e)
{
alert("data not sent"+e);
}
});
}
</script>
<button onclick="sendArray();">Send Array</button>
目前,我获得了一个成功的警报,但db中的级别没有变化。我知道db info可以工作,sql查询也可以工作,因为如果注释掉post块并添加实体变量,它就可以完美地运行。我在邮筒里搞砸了
任何帮助都将不胜感激!再次,抱歉,如果这个问题已经得到了回答,但我找不到一个有效的帖子
此外,我知道我不应该将SQL直接放入查询中。我只是想先让它工作起来
谢谢在javascript中使用变量
adjAmt
,但在PHP中要查找amtAdj
。我建议将其重命名为adjust
或更容易阅读的内容:)你真了不起。这个诵读困难症会杀了我。。。非常感谢你!三个小时浪费在这么简单的事情上:/数据可能是作为原始输入输入的,而不是$\u POST
数组元素。如果您print\u r($\u POST)会发生什么情况代码>?你看到你期望的变量了吗?如果没有,则尝试读取原始输入并查看其中的内容-$input=file\u get\u contents(“php://input");代码>@Tutoro我们都去过!我现在避免使用缩写词,因为我已经做了很多次同样的事情,明天我会试试这些,然后再报告。谢谢我试图击败你们所有人,但我在尝试时犯了一个错误。
if(isset($_POST['invAdj'])) {
$invAdj = json_decode($_POST['invAdj']);
$itemId = $invAdj->itemId;
$amtAdj = $invAdj->amtAdj;
}
mysqli_query($link, "UPDATE stock_levels SET stocklevel = stocklevel + " . $amtAdj . " WHERE id = " . $itemId);
?>