2017-01-04 12 views
-1

私はちょうど2つのページがあります私のアプリframework.In急行でnodejsを学び始めたがapp.jsとdb.js..Iは、フォームからのデータをポストし、db.jsmysqlとnodejsの接続方法は?

var mysql = require('./node_modules/mysql'); 
    var connection = mysql.createConnection({ 
      host: '127.0.0.1', 
      user: 'root', 
      password: '', 
      database: 'nodeapp' 
     }); 
    connection.connect(function (err) { 
     if (err) 
      throw err; 
    }); 
    module.exports = connection; 
でテーブル を登録するために挿入する必要があります私app.jsページで

//

var express = require('./lib/express'); 
    var app = express(); 
    var bodyParser = require('body-parser') 
    var db = require('/db'); 
    app.get('/', function (req, res) { 
     res.sendFile('/NodeProj/views/' + 'index.html'); 
    }); 
    /** bodyParser.urlencoded(options) 
    * Parses the text as URL encoded data (which is how browsers tend to send form data from regular forms set to POST) 
    * and exposes the resulting object (containing the keys and values) on req.body 
    */ 
    app.use(bodyParser.urlencoded({ 
     extended: true 
    })); 

    /**bodyParser.json(options) 
    * Parses the text as JSON and exposes the resulting object on req.body. 
    */ 
    app.use(bodyParser.json()); 

    app.post('/process_form', function (req, res) { 
     var response = { 
      "firstname": req.body.fst_name, 
      "email": req.body.fst_email, 
      "password": req.body.fst_password 
     }; 
     var query = connection.query('INSERT INTO register SET?',response,function(err,result){ 
      if(err) throw err; 
      if(result) console.log(result); 
     }); 
     res.end(JSON.stringify(response)); 
    }); 

    app.listen(8081); 

しかし、私は、私は次のエラー

Refference error: connection is not defined 

を得たコードを実行するとadvancの中.Thanks私を助けてくださいe。

+0

[this](https://codeforgeek.com/2015/01/nodejs-mysql-tutorial/)..... –

+2

そのコードの最上位ビットがDBファイルであると仮定して、あなたのMYSQLあなたがアプリケーションでそれを必要とするとき 'db'接続。 'var db = require( '/ db');'を 'var connection = require( '/ db');'に変更すると、それが役に立ちます。 – dan

+0

@PunitGajjar:しかし、db.jsで接続を定義し、app.jsのページにアクセスする方法を定義する必要がありますか? –

答えて

1

コメントに記載されているとおり、あなたはconnectiondbと呼ばれています。

var db = require('/db');var connection = require('./db');に置き換えた場合、connectionが定義されます。

+1

ありがとう@baao。答えを更新しました。 – dan

関連する問題