プログラミングに慣れていない、node.jsで基本的なアプリケーションを作成しようとしています。node.jsを使ってmysqlデータベースにデータを追加する
私は、HTMLの代わりに、ヒスイでのVisual StudioでのNode.jsを使用しています。私は名前、姓、性別の簡単なフォームを持っています。私はmysqlのworkbenchでデータベースを設定することもできました。
は、私は、コードを実行するとmysqlデータベースに正常に名前、姓と性別を追加し、次のクエリを持っています。
送信ボタンをクリックしたときにフォームからデータを収集する必要がある場合、私は立ち往生しています。
私はアヤックスで行うには、その何かを推測、私はPHPでいくつかの解決策を見つけましたが、私はNode.jsの持つソリューションとどのようにコードを実装するを見つけることに苦労しています。ここで
はapp.jsファイル
/**
* Module dependencies.
*/
var express = require('express');
var routes = require('./routes');
var http = require('http');
var path = require('path');
var mysql = require('mysql');
var app = express();
var connection = mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'my_password',
database: 'userlist',
});
connection.connect();
var user = { "name": "RandomName", "surname": "RandomSurnameName", "gender" : "M" };
connection.query('INSERT INTO studentinfo SET ?', user, function (err, res) {
if (err) throw err;
});
//connection.query('SELECT * FROM studentinfo', function (err, rows) {
// if (err) throw err;
// console.log('Data received from Db:\n');
// console.log(rows);
//});
// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', path.join(__dirname, 'views'));
app.engine('html', require('ejs').renderFile);
app.set('view engine', 'html');
app.use(express.favicon());
app.use(express.logger('dev'));
app.use(express.json());
app.use(express.urlencoded());
app.use(express.methodOverride());
app.use(app.router);
app.use(require('stylus').middleware(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'public')));
// development only
if ('development' == app.get('env')) {
app.use(express.errorHandler());
}
app.get('/', routes.index);
app.get('/about', routes.about);
app.get('/contact', routes.contact);
app.get('/newStudent', routes.newStudent);
http.createServer(app).listen(app.get('port'), function() {
console.log('Express server listening on port ' + app.get('port'));
});
var createStudent = {
name: String,
surname: String,
dob: Date,
gender: String,
}
connection.query('insert into userlist set ?', createStudent, function (err, result) {
});
コード/設定について詳しく教えてください。あなたのページはどのように見えますか?あなたのサーバーはどのように見えますか? – paqash
私は今システムにはいませんが、私はちょうどデフォルトのエクスプレステンプレートを使い始めるだけで、この簡単なフォームを追加してデータベースに値を取得する方法を学びました。また、私はサーバーについてあなたの質問を得ることができませんでした。あなたは詳細を教えてくれますか? –
私はあなたが助けを必要としている場所を正確にはわかりません。フォームからエクスプレスサーバーに値を送信するか、サーバー上でルートを作成して送信を処理するか、ルートハンドラーからコントローラーメソッドを呼び出すか、または上記のすべてを実行しますか? – paqash