Affichage des données en html/js fichier à l'aide de NodeJs de base de données mysql
Mon index.js fichier est
var express = require('express');
var app = express();
var path = require('path');
var router = express.Router();
var data = require('./data/jsonData');
var createDatabase = require('./data/db');
var careateTable = require('./data/createTable');
var insert = require('./data/insert');
var bodyParser = require('body-parser');
var select = require('./data/select');
app.use(express.static(path.join(__dirname, 'www')));
app.use(express.static(path.join(__dirname, 'form')));
app.use(bodyParser());
app.get('/' , function (req , res) {
res.sendFile(path.join(__dirname + '/www/index.html'));
});
app.get('/data' ,function (req , res) {
res.json(data);
});
app.get('/form' ,function (req , res) {
res.sendFile(path.join(__dirname + '/form/index.html'));
});
app.post('/form' ,function (req , res) {
console.log(req.body.user);
console.log(req.body.password);
insert.insertModule(req.body.user , req.body.password);
res.sendFile(path.join(__dirname + '/www/index.html'));
});
app.get('/show' , function (req , res) {
var i ;
select.select( function (err, results) {
if (err == 'error') {
console.log(err);
} else {
console.log(results);
res.send(results.username);
}
});
});
app.listen(3000);
console.log("App is listning on port 3000");
et select.js est
var mysql = require('mysql');
var con = mysql.createConnection({
host: "localhost",
user: "root",
password: "",
database: "NodeDataBase"
});
con.connect(function (err) {
if (err) throw err;
console.log("Connected!");
});
module.exports = {
select: function (callback) {
var sql = "SELECT username , password FROM login ";
con.query(sql, function (err, result , fields) {
if (err) {
callback("error", err)
} else {
callback("success", result)
}
});
}
}
J'en veux pour preuve les résultats d'objet de données de fichier html , Alors comment puis-je faire s'il vous plaît me suggérer.
à partir d'une requête get /show vous montrer toutes les données récupérées à partir de la base de données
Vous devez vous connecter pour publier un commentaire.
Vais essayer d'expliquer la façon dont il fonctionne (avec le compte sur vous êtes maintenant en mesure de voir les données sur les"http://localhost:3000/show') . Plz, les gars, corrigez-moi si je dois expliquer quelque chose d'une mauvaise façon.
Là, ce que vous avez dans votre code, est le
Alors, si nous vérifions le code, on peut voir la déclaration d'un serveur de l'api, par exemple
app.get('/show')
Là, ce que vous dites, c'est que express, va utiliser l'url /afficher avec la méthode OBTENEZ de l'
Ici est l'endroit où votre client apparaît dans la scène. Maintenant, nous supposons que votre serveur est en cours d'exécution, en attente pour servir d'OBTENIR des pétitions sur http://localhost:3000/show.
Si c'est correct, en cliquant sur le lien, vous devriez voir les noms d'utilisateur, et maintenant, vous aurez besoin d'un client http pour se connecter à votre serveur http de côté.
La façon dont vous pouvez saisir les données de votre client HTML à partir de votre serveur, est en javascript.
Ensuite, vous devrez créer un fichier HTML qui contiendra également un javascript script (dans mon exemple écrit dans angulaire).
Le HTML (ce qui est écrit dans jade. vous pouvez convertir) devrait ressembler à ceci:
Ce code doit saisir les données et afficher une ligne dans la table pour chaque nom dans la base de données.
Espérons que cela aide, à moins qu'une explication claire de la façon dont la pile complète (client-serveur), cela fonctionne.
Peut-être vous pouvez utiliser le moteur d'affichage tels Que EJS, Jade de rendre les données d'un nœud à l'extrémité avant.
Si vous voulez afficher les données de la page html, je vais faire comme http://localhost:3000/show : json -resonponse
je sera de retour json à partir du lien et dans Index.html avec l'aide de jquery/Ajax sur le lien , de récupérer la valeur et de l'afficher sur HTML