我一直在使用nodejs在mysql上使用简单的html形式进行练习,但是它似乎不起作用,该html称为index.html,而我的nodejs文件称为test.js,这是我的代码:
我的html
<!DOCTYPE html>
<html>
<head>
<title>email test form</title>
</head>
<body>
<form method="post" action="/data">
<label for="email">Voer je email in </label> <input type="email"
name="email"></input>
<input type="submit" value="submit">
</form>
<script src="test.js"></script>
</body>
</html>\
我的节点js JavaScript:
var express = require('express');
var app = express();
var mysql = require('mysql');
var bodyParser = require ('body-parser');
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: false}));
app.use(express.static('public'));
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "Bionicle123!",
database: "account"
});
con.connect(function(err){
if (err) throw err;
console.log("Je bent verbonden aan de database!");
});
app.post("/data", function(req, res) {
var userEmail = req.body.email;
console.log(userEmail);
var sql = "INSERT INTO persoon (email) VALUES (?)";
con.query(sql, userEmail, function (err, data) {
if (err) {
console.log("Failed ah mattie!");
} else {
console.log("Gelukt ah mattie!");
}
});
});
答案 0 :(得分:0)
未捕获的ReferenceError:在test.js:1中未定义require
您已将此问题标记为node.js。
您需要
从https://nodejs.org/en/下载它,然后安装它,然后运行node test.js
。
不允许加载本地资源:file:/// C:/ newuser
您需要从使用Node.js编写的Web服务器加载HTML文档。否则,action
URL不会指向正确的位置。
…但是首先您需要完成Web服务器的编写。在the Hello World example中查看Express.js(您也在使用)。
您需要致电listen
。这将为您提供一个指向浏览器的URL。