I want to retrieve content from MySQL to a web page. I tried to use node.js, I created a server on it, but I can't find how to link it to a webpage. How to pass parameter in node?
I need to load content from a table depending on the parameter in the link. (title, description, etc.) Example: localhost:63342/MySite/project.html?projectname=mygame
Parameter extraction code in webpage:
<script>
var params = window
.location
.search
.replace('?','')
.split('&')
.reduce(
function(p,e){
var a = e.split('=');
p[ decodeURIComponent(a[0])] = decodeURIComponent(a[1]);
return p;
},
{}
);
</script>
Node.js server code:
const http = require("http");
http.createServer(function(request,response){
response.end("Hello NodeJS!");
}).listen(3000, "127.0.0.1",function(){
console.log("Сервер начал прослушивание запросов на порту 3000");
});
const mysql = require("mysql2");
const connection = mysql.createConnection({
host: "localhost",
user: "username",
database: "databasename",
password: "pass"
});
connection.connect(function(err){
if (err) {
return console.error("Ошибка: " + err.message);
}
else{
console.log("Подключение к серверу MySQL успешно установлено");
}
});
connection.query("SELECT * FROM ProjectsData",
function(err, results, fields) {
console.log(err);
console.log(results); // собственно данные
//console.log(fields); // мета-данные полей
});
I moved the whole site to a Node.js host, using Handlebars for page rendering and express.router for easy parameter management.