Привет! Как вытащить данные из запроса к БД функцией connection.query в node.js и передать в html? Заранее спасибо.На просторах интернета нашла пример (Не работает):
### `mysql.js`
var http = require('http');
var mysql = require('mysql');
var fs = require('fs');
var connection = mysql.createConnection({
database : 'mysql',
user : 'root',
password : 'toor'
});
var x={};
var query = function(){
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
if (err) throw err;
x = rows[0].solution;
});
connection.end();
};
var answer = function(){
return x;
};
module.exports.query = query;
module.exports.answer = answer;
var server = http.createServer(function(request, response) {
response.writeHead(200, {'Content-Type': 'text/html'});
var myReadStream = fs.createReadStream(__dirname + '/index.html', 'utf8');
myReadStream.pipe(response);
});
server.listen(3000, '127.0.0.1');
console.log('Прослушивание порта 3000');
###index.html
<!DOCTYPE html>
<html>
<head>
<title>Hello World2!</title>
<script>
var mysql = require('./mysql.js');
function bodyOnLoad(){
mysql.query();
};
function getAnswer(){
document.getElementById("answer").innerHTML = mysql.answer();
}
</script>
</head>
<body onload="bodyOnLoad();">
<div id="answer" onClick="getAnswer;">Click me</div>
</body>
</html>
Используйте шаблонизатор и какой-то http-фреймворк для удобства. Например для Express и шаблонизатора handlebars, передача данных в html будет выглядеть следующим образом:
router.get("/", function(res, req, next){
connection.query('SELECT 1 + 1 AS solution', function(err, rows, fields) {
res.render("index.hbs", data: rows}
});
})
А потом в вашем .hbs (читайте .html) документе можно будет вывести
<div id="data">{{data.yourdata}}</div>
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Экспортировал базу mysql вордпресса, потом залил обратноТеперь ничего нельзя добавить в таблицу postmeta, выдает: #1062 - Дублирующаяся запись '0' по ключу...
Syntax error, insert "}" to complete Class body Syntax error, insert "}" to complete MethodBody
У меня есть indexhtml и подключенный index
Есть два локальных сервера (BD server, Auth Server)Общение между ними реализовано с помощью netty 4