首页 > 解决方案 > 更新mysql前端

问题描述

在此处输入图像描述 我有一个表单的屏幕截图,用于在前端执行 put 方法,但是当我尝试执行它时,我从下面的网络选项卡根本没有得到任何响应我有我的服务器代码和前端代码

   app.put('/movielist/updateMovie/:id',(req,res) =>{
  const  id = req.params.id;
  const update = req.body;
  mysqlConnection.query("UPDATE movielist SET ? WHERE idmovielist = ?", [update, id], function (err, results) {
    if (!err) {
      res.send("Movie list is updated");
    } else {
      console.log(err);
    }
  });
});


$(function(){
      function getOneMovie(id) {
              $.ajax({
                  url: 'http://localhost:3000/movielist' + id,
                  method: 'GET',
                  dataType: 'json',
                  success: function (data) {
                      $($("#updateForm")[0].movieId).val(data._id);
                      $($("#updateForm")[0].intNum).val(data.intNum);
                      $($("#updateForm")[0].name).val(data.name);
                      $($("#updateForm")[0].thumnail_path).val(data.thumnail_path);
                      $($("#updateForm")[0].description).val(data.description);
                      $($("#updateForm")[0].year_released).val(data.year_released);
                      $($("#updateForm")[0].language_released).val(data.language_released);
                      $("#updateForm").show();
                  }
              });
          }

          $("#movieAdded").click(function (a) {
            console.log("movieAdded Click")
              let mydata = {
                  idmovielist: $($("#newForm")[0].intNum).val(),
                  name: $($("#newForm")[0].name).val(),
                  thumnail_path: $($("#newForm")[0].thumnail_path).val(),
                  description: $($("#newForm")[0].description).val(),
                  year_released: $($("#newForm")[0].year_released).val(),
                  language_released: $($("#newForm")[0].language_released).val(),
              }
              displayMovie(mydata);
              console.log("Hidden")
              $("#newForm").trigger("reset");
              $("#newForm").toggle();
              console.log("Hidden")
              a.preventDefault();
          });
          function displayMovie(mydata) {
              $.ajax({
                  method: "POST",
                  url: "http://localhost:3000/movielist/addMovie",
                  dataType: "json",
                  data: mydata,
                  success: function (data) {
                      console.log(data);
                  }
              });
          }

          function loadButton() {
              $(".editMovie").click(function (a) {
                  getOneMovie($($(this)[0]).data("movieId"));
                  a.preventDefault();
              });

              $(".deleteMovie").click(function (a) {
                  deleteMovie($($(this)[0]).data("movieId"));
                  a.preventDefault();
              });
          }
             loadButton();
          function putMovie(id, data) {
              $.ajax({
                  url: 'http://localhost:3000/movielist/updateMovie/' + id,
                  method: 'PUT',
                  dataType: 'json',
                  data: data,
                  success: function (data) {
                      console.log(data);
                      getOneMovie();
                  }
              });
          }

          $("#updateMovie").on("click", function (a) {
              let data = {
                  idmovielist: $($("#updateForm")[0].intNum).val(),
                  name: $($("#updateForm")[0].name).val(),
                  thumnail_path: $($("#updataForm")[0].thumnail_path).val(),
                  description: $($("#updateForm")[0].description).val(),
                  year_released: $($("#updateForm")[0].year_released).val(),
                  language_released: $($("#updateForm")[0].language_released).val(),
              }

              putMovie($($("#updateForm")[0].movieId).val(), data);
              $("#updateForm").trigger("reset");
              $("#updateForm").toggle();
              a.preventDefault();

          });


          function deleteMovie(id) {
              $.ajax({
                  url: "http://localhost:3000/movielist/" + id,
                  method: 'DELETE',
                  dataType: 'json',
                  success: function (data) {
                      console.log(data);
                  }
              });
          }

});

所以基本上这个 put 在我的后端工作,但是当我在前端执行它时,他们没有响应,所以他们是我可以解决这个问题的一种方法,他们在我的前端有什么问题,我也得到了这个 mycrud.js:79未捕获的类型错误:无法读取未定义的属性“thumnail_path”

thumnail_path: $($("#updataForm")[0].thumnail_path).val(),上面这部分是说它是未定义的

标签: jquerycrud

解决方案


您是否尝试过针对实际的数据库控制台运行此查询?

您需要设置year_released=[某个值]。SET 需要一个参数来更改字段的值。

同样在您显示的错误中,您在 value 周围有双单引号tapori。那应该只有一个逃脱 \' 在它的每一边。


推荐阅读