Проблема Вставка записей в MySQL с помощью Express и Node.js - PullRequest
0 голосов
/ 25 апреля 2018

У меня проблема с тем, что мой код INSERT не работает.Я могу выбрать данные из базы данных, но не могу добавить данные.Когда я запускаю http://18.219.103.143:3000/insert-user?fname=new&lname=user&email=ejw&password=hsdf, я получаю ошибку сервера в консоли.enter image description here

Я думаю, что-то не так с этим app.get.

app.get('/insert-user',function(req,res,next){
  var context = {};
  pool.query("INSERT INTO user (`fname`, `lname`, `email`, `password`) VALUES (?,?,?,?)", 
  [req.query.fname, req.query.lname, req.query.email, req.query.password], 
  function(err, result){
    if(err){
      next(err);
      return;
    }
    context.results = "Inserted id " + result.insertId;
    res.render('home',context);
  });
});

Однако я не могу получить ни одно сообщение для печатина консоль, чтобы отладить.Но я думаю, что поскольку я могу подключиться к базе данных с помощью своих операторов SELECT, проблема заключается не в подключении.Похоже, что app.get INSERT даже не выполняется.У кого-нибудь есть идея эффективного способа отладки этого?Я бью стену и не могу понять, какой будет следующий лучший шаг.

1 Ответ

0 голосов
/ 25 апреля 2018

Я бы сначала посмотрел в вашем терминале, где вы запускаете свой сервер.Если там уже ничего не выводится, я бы изменил ваш скрипт следующим образом

app.get('/insert-user',function(req,res,next){
  var context = {};
  pool.query("INSERT INTO user (`fname`, `lname`, `email`, `password`) VALUES (?,?,?,?)", 
  [req.query.fname, req.query.lname, req.query.email, req.query.password], 
  function(err, result){
    if(err){
      console.log(err); // <= add this
      next(err);
      return;
    }
    context.results = "Inserted id " + result.insertId;
    res.render('home',context);
  });
});

Затем попробуйте снова достичь своей конечной точки.Надеемся, что информация об ошибке будет зарегистрирована (в терминале, а не в вашем браузере).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...