使用Node.js将HTML表单数据插入HEROKU PostgreSQL数据库

问题描述

我试图在线将HTML表单中的数据插入到我的HEROKU Postgresql数据库中,但是失败了。当我在线执行代码时,我得到(内部服务器错误)这是我拥有的代码。 我不确定在这里我在做什么错。

const express = require('express');
var app = express();
var pg = require('pg');

//set port
var port = process.env.PORT || 8080
var connection = {connectionString: process.env.DATABASE_URL || "postgres://xxxxxxxxxxxxxx"};
var client = new pg.Client(connection);
client.connect();

app.use(express.static(__dirname ));

//routes
app.get('/',function (req,res) {
    res.render("index");
});


app.post('/submit',res) {
    // Grab data from http request
    const data = {firstname: req.body.firstname,lastname: req.body.lastname,mail: req.body.mail,country: req.body.country,zipcode: req.body.zipcode,cityName: req.body.cityName,google: req.body.google,twitter: req.body.twitter,linkdin: req.body.linkdin,facebook: req.body.facebook,comm: req.body.comm
    };
    connection.connect(function (err) {
        if (err) throw err;
        console.log("connected");
        var pg = "INSERT INTO userdata(firstname,lastname,mail,country,zipcode,cityname,google,twitter,linkdin,facebook,comm) VALUES ('"+data.firstname+"','"+data.lastname+"','"+data.mail+"','"+data.country+"','"+data.zipcode+"',"+data.cityName+",'"+data.google+"','"+data.twitter+"','"+data.linkdin+"','"+data.facebook+"','"+data.comm+"')";
        connection.query(pg,function (err,result) {
            if (err) throw err;
            console.log("table created");
        });
    });
    res.sendFile('index.html',{ root: __dirname });
});

app.listen(port,function(){
    console.log("app running");
})

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)