[英]Display MySQL data using Node.js
我正在做一个小脚本,当我按Submit时,我将表单数据输入数据库表。
我想做的是在下一页显示添加的数据,即/ form的app.post
目前我只得到一个有薪水的员工.....但是我想显示刚添加的数据的整行。
现在,我该怎么做? 这是我用来运行应用程序的server.js的代码。
var express = require('express');
var path = require('path');
var bodyParser = require('body-parser');
var app = express();
var mysql = require('mysql');
var connection = mysql.createConnection({
host:'localhost',
user:'root',
password:'',
database:'employees'
});
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));
app.get('/', function (req,res){
res.sendFile(path.join(__dirname,'index.html'));
});
app.get('/add-employee.html',function(req,res){
res.sendFile(path.join(__dirname,'/add-employee.html'));
});
app.post('/add-employee.html',function(req,res){
res.status(200).send();
console.log('employee '+req.body.name + ' added');
});
connection.connect(function(err){
if(err){
console.log('Error connecting to Db');
return;
}
console.log('Connection established');
});
app.post('/form',function (req,res){
//employee details from add-employee.html page
var name=req.body.name;
var designation = req.body.designation;
var pan = req.body.pan;
var aadhar = req.body.aadhar;
var bank = req.body.bank;
var salary = req.body.salary;
var allowance = req.body.allowance;
var esi = req.body.esi;
var uan = req.body.uan;
var details = {name:name,designation:designation,pan:pan,aadhar:aadhar,
bank:bank,salary:salary,allowance:allowance,esi:esi,uan:uan};
var query = connection.query('INSERT INTO employee_details SET ?',details,function(err,result){
if(err){
console.log(err);
}
console.log(query.sql);
});
connection.query('SELECT * FROM employee_details',function(err,rows){
if(err) throw err;
console.log('Data received');
console.log(rows);
});
res.status(200).send('employee ' + name + 'with salary of '+salary+ ' added');
});
app.get('/add-company.html',function(req,res){
res.sendFile(path.join(__dirname,'/add-company.html'));
});
app.get('/style.css',function(req,res){
res.sendFile(path.join(__dirname,'/style.css'));
});
app.get('/main.js',function(req,res){
res.sendFile(path.join(__dirname,'/main.js'));
});
app.get('/cmain.js',function(req,res){
res.sendFile(path.join(__dirname,'/cmain.js'));
});
var port=8080;
app.listen(8080,function(req,res){
console.log(`Payroll app listening on port ${port}!` );
});
我可以在控制台中的select查询中看到行。 但是问题是我不知道如何在页面本身上显示它。 我怎么做?
插入后需要选择。 注意查询是异步的。
var query = connection.query('INSERT INTO employee_details SET ?',details,function(err,result){
if(err){
console.log(err);
}
console.log(query.sql);
connection.query('SELECT * FROM employee_details',function(err,rows){
if(err) throw err;
console.log('Data received');
console.log(rows);
res.status(200).send('employee ' + name + 'with salary of '+salary+ ' added');
});
});
connection.query('INSERT INTO employee_details SET ?',details,function(err,result){
if(err){
console.log(err);
}
else{
res.status(200).send(result);
}
});
删除以下部分,这将从您调用此api的位置发送结果,您可以显示该结果
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.