【发布时间】:2020-03-10 09:09:35
【问题描述】:
我是 Node JS 的新手,我正在尝试将从我的 MySQL 表中提取的数据显示到我的 HTML 文件中的表中。但我找不到任何对我有帮助的东西。如果有人可以帮助我找到解决方案,我将不胜感激! :) 这是我的 js 代码:
//app.js
// Get the mysql service
var mysql = require('mysql');
var express = require('express');
var app = express();
app.get('/', function (request , response) {
fetchData(response);
console.log('Done. Displayed Data.');
});
// Add the credentials to access your database
var connection = mysql.createConnection({
host : 'localhost',
user : 'root',
password : '',
database : 'Breunninger',
port: '3306'
});
// connect to mysql
connection.connect(function(err) {
if(err){throw err;}
console.log('Connected');
});
function executeQuery(sql, cb){
connection.query(sql, function( result, fields){
cb(result);
})
}
function fetchData(response){
executeQuery("SELECT username, tor, datum, sendungsstruktur FROM Buchung JOIN user ON(user.id = Buchung.userid)", function (result) {
console.log(result);
response.write('<div class="container-wrap"><table id="example" class="display"><tr>');
for(var column in result[0]){
response.write('<td> <label>' + column + '</label></td>');
response.write('</tr>');
}
for(var row in result){
response.write('<tr>');
for(var column in result[row]){
response.write('<td>' + result[row][column]+ '</td>');
}
response.write('</tr>');
}
response.end('</table></div>');
});
}
<div class="container-wrap">
<div class="flexslider">
<script src="app.js"></script>
</div>
</div>
【问题讨论】:
-
您的示例中的哪些内容不起作用?您能否运行您的代码并提供示例输出。
-
我没有收到错误或其他错误。控制台只显示数据库已连接。但我也想在控制台中查看结果,并且我想在 HTML 文件中显示结果(但我不知道如何,而且我在 www 中也找不到任何东西)@Max
-
另外,您使用的是 express 而
response没有write功能。executeQuery的回调应该有像(error, results, fields)这样的参数。你检查error的值了吗?
标签: javascript html mysql node.js express