By saving an input-text in a Mysql database, it will not let me. When I tap on submit I get the following error
TypeError: Can not read property 'inputemail' of undefined at routes.post (C: \ Users \ Piter \ Desktop \ Goven \ server \ routes \ routes.js: 11: 31) at Layer.handle [as handle_request] (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ layer.js: 95: 5) at next (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ route.js: 137: 13) at Route.dispatch (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ route.js: 112: 3) at Layer.handle [as handle_request] (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ layer.js: 95: 5) at C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ index.js: 281: 22 at Function.process_params (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ index.js: 335: 12) at next (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ index.js: 275: 10) at Function.handle (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ index.js: 174: 3) at router (C: \ Users \ Piter \ Desktop \ Goven \ node_modules \ express \ lib \ router \ index.js: 47: 12)
This is my HTML code:
<div id="screen">
<form action="/contact" method="post">
<h5>Email</h5>
<input type="text" id="inputemail" name="inputemail" >
<h5>Comentario</h5>
<textarea id="areacoment" name="areacoment"></textarea>
<button type="submit" id="btnsubmit">Enviar</button>
</form>
</div>
This my routes:
const express = require("express");
const routes = express.Router();
const pool= require("../mysql/mysql");
const mysql=require("../mysql/mysql");
routes.post("/contact",(req,res)=>{
var inputemail = req.body.inputemail;
pool.query("INSERT INTO contact (email, info) VALUES (?, ?)", [inputemail, inputcoment],
function (error, results, fields) {
if (error) { throw error }
if (results) { console.log(results); }
}
);
res.render("index.html");
});
module.exports=routes;
This is my index.js:
const express = require("express");
const app = express();
const morgan = require("morgan");
const path = require("path");
const routes = express.Router();
const mysql = require("mysql");
const connection = require("express-myconnection");
//SETTINGS
app.set("port", process.env.PORT || 8080);
//ROUTES
app.use(require("./routes/routes"));
//STATIC FILES
app.use(express.static(path.join(__dirname,"public")));
//MIDDLEWARES
app.use(express.urlencoded({extended:false}));
//MYSQL
app.use(connection(mysql,{
host:"localhost",
user: "pedri",
password:"cocoypaco2",
database:"vegi",
port:3306
},"single"));
//LISTEN SERVER
app.listen(app.get("port"),()=>{
console.log("Server on port ", app.get("port"));
});