Прошу помощи с моим первым приложением. Использую Node js Express. Body-parser для обработки данных. При добавление записи с фронта все успешно добавляется, ошибки не возникает, но результат следующий: app.js:
const express = require('express')
const bodyParser = require('body-parser');
const mysql = require('mysql');
const path = require('path');
const app = express()
const {getHomePage} = require('./routes/index');
const {addTaskPage, addTask} = require('./routes/tasks');
const db = mysql.createConnection ({
host: "******",
port: "*****",
user: "*****",
password: "*****",
database: "*****"
});
// connect to database
db.connect((err) => {
if (err) {
throw err;
}
console.log('Connected to database');
});
global.db = db;
// configure middleware
app.set('views', __dirname + '/views');
app.set('view engine', 'ejs');
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json()); // parse form data client
app.use(express.static(path.join(__dirname, 'public')));
// routes for the app
app.get('/', getHomePage);
app.get('/add', addTaskPage);
// app.get('/addSolution', addSolutionPage);
// app.post('/addSolution', addSolution);
app.post('/add', addTask);
// app.post('/edit/:id', editPlayer);
// set the app to listen on the port
app.listen(3000, function () {
console.log('Example app listening on port 3000!')
})
task.js
const fs = require('fs');
module.exports = {
addTaskPage: (req, res) => {
res.render('addTask.ejs', {
title: "Welcome to TRIZ | Add a new task"
,message: ''
});
},
addTask: (req, res) => {
let message = '';
var NameTask = req.body.NameTask;
let ConditionTask = req.body.ConditionTask;
let Subject = req.body.Subject;
let Age = req.body.Age;
let taskQuery = "SELECT * FROM `TaskList` WHERE NameTask = '" + NameTask + "'";
db.query(taskQuery, (err, result) => {
if (err) {
return res.status(500).send(err);
}
// if (result.length > 0) {
// message = 'Tasks already exists';
// res.render('addTask.ejs', {
// message,
// title: "Welcome to TRIZ | Add a new task"
// });
// }
else {
let query = "INSERT INTO `TaskList` (NameTask, ConditionTask, IDUser, IDSubject, IDAge) VALUES ('" +
NameTask + "', '" + ConditionTask + "', 1, 1, 1)";
console.log(query.sql);
db.query(query, (err, result) => {
if (err) {
return res.status(500).send(err);
}
res.redirect('/');
});
}
});
}
}
Проверьте NameTask, у вас с ним явно что-то не то, при вставке undefined говорит, что req.body.NameTask нет такого объекта в req.body, проверьте на вывод req.body (что в нем приходит на вставку), скорее всего там массив записей и вставка будет либо в цикле, либо если там один элемент всегда, то так req.body[0].NameTask
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть такой сайт в котором 1 пользователь может выбрать в каком проекте хочет работатьНапример: Заходит на главную страницу, выбирает себе...
Задача: запустить поочередно с определенной задержкой ряд php файловПытался следующим образом - в общий php файл, подключил нужные, и поставил...
Есть vk_api, где все функции записаны, и есть обработчик, botphp В нем прописано: