Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我的RESTful API不是';t更新数据库,但ajax返回成功_Javascript_Php_Json_Api - Fatal编程技术网

Javascript 我的RESTful API不是';t更新数据库,但ajax返回成功

Javascript 我的RESTful API不是';t更新数据库,但ajax返回成功,javascript,php,json,api,Javascript,Php,Json,Api,在本教程之后,我构建了一个简单的API 当用户单击房间时,系统会提示用户是否需要清洁房间,如果用户点击yes,则会向MyAPI的更新部分发出ajax请求。请求返回success,但由于某些原因数据库未更新。我知道连接到数据库没有问题,因为我可以从数据库中读取信息,没有问题。 下面是进行调用的前端的一个小片段 //在房间单元格中循环,然后单击“添加侦听器” var roomCells=document.getElementsByClassName(“zui粘性列”); 对于(i=0;i,如上所述

在本教程之后,我构建了一个简单的API 当用户单击房间时,系统会提示用户是否需要清洁房间,如果用户点击yes,则会向MyAPI的更新部分发出ajax请求。请求返回success,但由于某些原因数据库未更新。我知道连接到数据库没有问题,因为我可以从数据库中读取信息,没有问题。 下面是进行调用的前端的一个小片段

//在房间单元格中循环,然后单击“添加侦听器”
var roomCells=document.getElementsByClassName(“zui粘性列”);

对于(i=0;i,如上所述,问题在于代码

var attribute = $this.getAttribute("data-room");
roomClean = attribute;

由于“$this.getAttribute(“数据室”);”返回字符串,因此需要在添加之前对其进行数字解析

因此,代码变成:

var temp = parseInt(roomClean)+1;
为了进一步说明,我将更改以下功能:

addClean() | removeClean()
仅使用另一个参数化函数(使用布尔值或数字1/0)

函数清理函数(清理){
var temp=房间清洁+1;
$.ajax({
类型:“POST”,//rest类型
url:“https://alteredego.org/markiii/inn_api/rooms/update.php",
数据类型:'text',
数据:JSON.stringify({“room”:temp,“dirty”:clean}),
成功:功能(数据){
$('[data room='+roomClean+']')。追加('
'); }, 失败:函数(jqXhr、textStatus、errorMessage){ log(“对不起,我现在不能这样做。请再试一次。”,errorMessage); } }); 破坏模态(); }
代码太多了,你需要缩小范围。我一直在尝试,但我不确定错误来自何处。css似乎不相关,如果你在javascript中得到意外结果,只有该函数看起来相关。对我来说,它工作得很好,我试过使用params“room 1 | dirty 1”它写在你的房间里很好,还有“room 1 | dirty 0”也很好。我认为你的问题是:var temp=roomClean+1;在添加“+1”之前,你需要对它进行数字解析,然后尝试使用parseInt(roomClean)+1@jeroen但问题是我不知道它是否与JS相关,因为我没有收到任何错误。我觉得CSS是必要的,所以当有人运行代码片段时,我所有的元素和事件监听器都有适当的填充,以便可以实际单击,并且一些函数通过添加或删除CSS来工作。
addClean() | removeClean()
function cleanFunction(clean) {

  var temp = roomClean +1;
  $.ajax({
    type: "POST", //rest Type
    url: "https://alteredego.org/markiii/inn_api/rooms/update.php",
    dataType:'text',
    data:JSON.stringify( {"room": temp, "dirty": clean}),
    success : function(data) {
    $('[data-room='+roomClean+']').append('<br><i class="fas fa-exclamation-circle"></i>');
    },
    failure: function(jqXhr, textStatus, errorMessage) {
      console.log(" Sorry I can't do that right now. Please try again. ", errorMessage );
  }
});
  destroyModal();
}