Récupérer le résultat d'une requête
Bonjour à tous,
J'aurais besoin de vos lumières, j'arrive du monde Delphi et j'avoue que je suis un peu déboussolé avec NodeJs.
J'ai déjà fait un premier projet NodeJs + ejs + MySQL, mais un peu à l'arrache... il fonctionne correctement mais celui-ci j'aimerais le faire proprement...
Donc voilà comment j'aimerais structurer ce projet :
Le fichier principal : app.js
un/des autres fichiers pour décrire mes objets : Utilisateur.js, Vehicule.js
Je sais comment inclure tous ces fichiers dans le projet au lancement...jusque là tout-vas bien
mais voilà où je pèche...
Voivi un extrait du code de app.js
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
var express = require('express');
var app = express();
const mysql= require('mysql');
const fs = require('fs');
const vm = require('vm');
const path = __dirname + '/views/';
vm.runInThisContext(fs.readFileSync(__dirname+'/SQL.js'));
vm.runInThisContext(fs.readFileSync(__dirname+'/ClassesVehicule.js'));
var cnn = mysql.createConnection({
multipleStatements : true,
host : 'localhost',
port : 1234,
database : 'DB_MaDB',
user : 'root',
password : '1234'
})
app.set('view engine','ejs');
//initialisation des objets
var Vehicule = new ClasseVehicule();
var Utilisateur = new ClasseUtilisateur();
app.get("/",function(req,res){
console.log("Quelqu'un se connecte...");
//1er rendu
console.log('test = '+Test(cnn));
}); |
voici le code appelé pour exec dans un fichier appelé SQL.js (le paramètre con, signifie Connexion :roll:)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function Test(con){
con.query('SELECT * FROM T_MATERIEL',function(err,results){
if (err!=null){
console.log('query erreur Vehicule = ' + err)
}
else{
console.log('>>>>'+results[0].MATERIEL);
return results[0].MATERIEL;
}
});
} |
ma question est comment récupérer le résultat de la fonction Test() dans app.js :weird:
Ma requête fonction correctement, mais je ne sais pas retourner le résultat...:oops:
à moins qu'il ne faut pas faire comme ça en NodeJs
Merci à ceux qui passerons par là et merci a ceux qui pourrons m'éclairer un peu
Bonne soirée
Christophe