Submitted data from NodeJS are undefined in Mysql Database

Tharaka_Ravishan

When i submitted the form data, the data added to mysql database and values shown as Undefined.
Can anyone show me whats the problem, I'm very new to NodeJs development.

HTML doc

<html>

    <form method="post" action="/add">

    Name : <input   name="mname" type ="text" > <p>
    Age :  <input name="mage"   type ="text" > <p>
    Department : <input name="mdepartment"   type="text" > <p>
    City : <input   name="mcity" type = "text"> <p>

    <input type="submit" value ="submit">
    <input type="reset" value="reset"> 
    </form>
</center>

and My Javascript file as follows

myapp.js

 var express = require('express');
var path = require('path');
var mysql = require('mysql');
var app = express();
var bodyparser = require('body-parser');

var connection = mysql.createConnection({
    host : 'localhost',
    user : 'root',
    password : '1234'
});

connection.query('USE samplenodejs');

app.set('port',3000);


app.use(bodyparser.urlencoded({extended : false}));

app.get('/', function(req, res) {
    console.log('GET /');
    res.sendFile(__dirname + '/AddDetails.html');
});


app.post('/add',function(req,res){

connection.query("INSERT INTO test VALUES('','"+req.body.mname+"','"+req.body.mage+"','"+req.body.mcity+"','"+req.body.mdepartment+"')",function(err,res){
    if(err) throw err;
});
res.redirect('/');

});


app.listen(app.get('port'));
console.log('Express server listening on port '+app.get('port'));
Ajay

I am expecting you are getting valid data from the client. So below is the function to insert the data. Mysql string constants should be enclosed with " quotes.

app.post('/add',function(req,res){
    //Check this log in console, it should print all the values properly, if not issue is at clinet side
    console.log('Input:: name='+req.body.mname+' age='+ req.body.mage +' city='+ req.body.mcity + ' dep=' + req.body.mdepartment,   req.body);

    var Query = `INSERT INTO test (id, name, age, city, department) VALUES ("", "${req.body.mname}","${req.body.mage}","${req.body.mcity}","${req.body.mdepartment}" )`;

    //printing query in the console, if you still face the issue, you can execute this query manually.
    console.log("Query :" + Query );

    connection.query(Query, function(err,res){
        if(err) {
          console.error('Error in sql query:' + Query + ' Err', err);
          throw err;
        }
    });
    res.redirect('/');
});

You should not pass the user input directly to SQL query, always need to do input validation.

In NodeJs, its better to use JSON key:value pair for insertion as shown below
connection.query('INSERT INTO test SET ?', {name:req.body.mname, age:req.body.mage}, function(err, res) {});

Collected from the Internet

Please contact [email protected] to delete if infringement.

edited at
0

Comments

0 comments
Login to comment

Related

From Dev

Displaying submitted data from database

From Dev

What is the correct way to retrieve data from database using nodejs and MySQL?

From Dev

Java script function returns "undefined" in NodeJS with mysql database

From Dev

Undefined offset trying to echo data from database

From Dev

Nodejs, Mongoose and Jade get no data from Database

From Dev

Retrieving data from MySQL database

From Dev

data from mysql database in html

From Dev

Retrieving data from MySQL database

From Dev

Displaying data from mysql database

From Dev

Prevent empty array records from being submitted in to MYSQL database using php

From Dev

Submitted data aren't stored in the database

From Dev

Submitted data aren't stored in the database

From Dev

How can I pre-select a dropdown option using previously submitted data from database, MySQLI

From Dev

Input from mvc application is not getting submitted in database

From Dev

how can i get alert of data submitted successfully from using servlet,js,html,mysql remote server?

From Dev

Undefined values In MySQL database

From Dev

NodeJS: Backup MySQL database

From Dev

How to get specific data from MySQL database?

From Java

display data from the MySQL database into an HTML

From Dev

Getting data from MySQL database based on date

From Dev

uploading data from Shiny app into MySQL database

From Dev

Data from javascript code insert to mysql database

From Dev

How to pass data from mysql database to $_SESSOIN

From Dev

Reading data from mysql database using java

From Dev

Load data from JSON file to MYSQL database

From Dev

Insert data from multiple textfields into MYSQL Database

From Dev

Striping HTML from data in MySQL database column

From Dev

Simplify code for taking data from mysql database

From Dev

send and retrive arabic data from mysql database

Related Related

  1. 1

    Displaying submitted data from database

  2. 2

    What is the correct way to retrieve data from database using nodejs and MySQL?

  3. 3

    Java script function returns "undefined" in NodeJS with mysql database

  4. 4

    Undefined offset trying to echo data from database

  5. 5

    Nodejs, Mongoose and Jade get no data from Database

  6. 6

    Retrieving data from MySQL database

  7. 7

    data from mysql database in html

  8. 8

    Retrieving data from MySQL database

  9. 9

    Displaying data from mysql database

  10. 10

    Prevent empty array records from being submitted in to MYSQL database using php

  11. 11

    Submitted data aren't stored in the database

  12. 12

    Submitted data aren't stored in the database

  13. 13

    How can I pre-select a dropdown option using previously submitted data from database, MySQLI

  14. 14

    Input from mvc application is not getting submitted in database

  15. 15

    how can i get alert of data submitted successfully from using servlet,js,html,mysql remote server?

  16. 16

    Undefined values In MySQL database

  17. 17

    NodeJS: Backup MySQL database

  18. 18

    How to get specific data from MySQL database?

  19. 19

    display data from the MySQL database into an HTML

  20. 20

    Getting data from MySQL database based on date

  21. 21

    uploading data from Shiny app into MySQL database

  22. 22

    Data from javascript code insert to mysql database

  23. 23

    How to pass data from mysql database to $_SESSOIN

  24. 24

    Reading data from mysql database using java

  25. 25

    Load data from JSON file to MYSQL database

  26. 26

    Insert data from multiple textfields into MYSQL Database

  27. 27

    Striping HTML from data in MySQL database column

  28. 28

    Simplify code for taking data from mysql database

  29. 29

    send and retrive arabic data from mysql database

HotTag

Archive