繁体   English   中英

使用Node.js显示MySQL数据

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM