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');
}
});
});
});
}
但这没有奏效。 我试图在主server.js写POST方法文件须─
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文件 -
/**
* 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的?
“这不起作用”不会帮助我们和你。告诉我们当您尝试在浏览器中执行* POST *时发生的情况。服务器的控制台输出是什么?浏览器的输出是什么?尝试捕获浏览器的网络通信(使用开发工具)。 – alandarev
@alandarev,控制台里什么都没有,它只是告诉我'不能POST /创建'消息。 – user3163213
添加一些console.log语句以查看是否正在执行代码,以及是否 - 流停止的位置。什么是“不能发布/创建”的消息?它是什么*?浏览器?浏览器不会像404一样返回编码错误?查看浏览器开发工具中的响应状态,如果它是** 200 **,那么显然你的服务器工作。 – alandarev