2014-07-07 6 views
0

나는 node.js.와 매우 초보자입니다. 내가 여기 데이터베이스 -은 node.js에서 형식을 게시 할 수 없습니다.

에 값을 삽입하려고 그와 샘플 양식이 있습니다

<form action="/create" method="POST" class="form-horizontal" enctype="application/x-www-form-urlencoded"> 
    <input type="text" id="username_input" name="username"> 
    <input type="text" id="password_input" name="password"> 
    <input type="submit" name="Submit" value="Insert" class="btn"> 
</form> 

가 - 그것을에게

내가 만든 게시하려고 페이지 - 내 테스트입니다 test.js 파일 및 그 안에 쓰기 방법 -

exports.list = function (req, res) { 
    req.getConnection(function (err, connection) { 
     console.log(con) 
     app.post("/create", function (req, res) { 
      var username = req.body.username, 
    password = req.body.password; 
      console.log(username); 
      console.log(password); 

      connection.query('INSERT INTO users(email,password) VALUES', (username, password), function (err, rows) { 

       if (error) { 

        console.log(error.message); 
       } else { 
        console.log('succes'); 

       } 

      }); 

     }); 
    }); 
} 

그러나 이것은 작동하지 않았습니다. 나는

app.post("/create", function (req, res) { 
     var username = req.body.username, 
password = req.body.password; 
     console.log(username); 
     console.log(password); 

     connection.query('INSERT INTO users(email,password) VALUES', (username, password), function (err, rows) { 

      if (error) { 

       console.log(error.message); 
      } else { 
       console.log('succes'); 

      } 

     }); 

    }); 

있었어 .- 주요 server.js에 파일을 게시 방법을 쓰기 시도했지만이 또한 작동하지 않았다.

내가 server.js 파일 -

/** 
* Module dependencies. 
*/ 

var express = require('express') 
    , routes = require('./routes') 
    , index_form = require('./routes/index_form') 
    , user = require('./routes/user') 
    , test = require('./routes/test') 
    , mysql = require('mysql') 
    , http = require('http') 
    , path = require('path') 
    , mongoose = require('mongoose'); 

var connection = mysql.createConnection({ 
    host: 'localhost', 
    user: 'root', 
    password: '[email protected]' 
}); 

var app =express(); 

app.configure(function() { 
    app.set('port', process.env.PORT || 3000); 
    app.set('views', __dirname + '/views'); 
    app.set('view engine', 'ejs'); 
    app.use(express.favicon()); 
    app.use(express.logger('dev')); 
    app.use(express.bodyParser()); 
    app.use(express.methodOverride()); 
    app.use(app.router); 
    app.use(express.static(path.join(__dirname, 'public'))); 
}); 

app.configure('development', function() { 
    app.use(express.errorHandler()); 
}); 

app.get('/', routes.index); 
app.get('/test', test.test); 
app.get('/users', user.list); 
app.get('/index_form', index_form.index_form) 

http.createServer(app).listen(app.get('port'), function() { 
    console.log("Express server listening on port " + app.get('port')); 
}); 

이 친절하게 모든이를 통해 나를 인도에서 현재 설정을 다음하고, 어떻게 Node.js를 내 폼 게시물을해야합니까?

+1

"작동하지 않았습니다."우리와 당신을 도울 수 없습니다. * POST *를 브라우저에서 시도했을 때 어떤 일이 발생했는지 정확하게 알려주십시오. 서버의 콘솔 출력은 무엇입니까? 브라우저의 출력은 무엇입니까? 브라우저의 네트워크 통신도 캡처하십시오 (dev 도구 사용). – alandarev

+0

@alandarev, 콘솔에는 아무것도 나오지 않습니다. 단지'POST/create' 메시지를 보여줍니다. – user3163213

+1

일부 console.log 문을 추가하여 코드가 전혀 실행되고 있는지 여부와 흐름이 중지 된 경우인지 확인하십시오. "POST/작성할 수 없습니까?"메시지 란 무엇입니까? * It * 무엇입니까? 브라우저? 브라우저가 404와 같이 코딩 된 오류를 반환하지 않습니까? 브라우저 개발 도구에서 응답 상태를 확인하십시오. ** 200 **이면 서버가 제대로 작동합니다. – alandarev

답변

1

아직 GET 경로를 작성한 후에 을 server.js에 넣으려고 했습니까? 여기 내가 본 내용은 현재 입니다. server.js에는 POST 요청이 없습니다.

관련 문제