2016-01-15 9 views
5

Prima di tutto, vorrei sottolineare che sono molto nuovo a Node.JS. Sto cercando di utilizzare NodeJS per creare una pagina contenente più tabelle e informazioni. Il mio problema è che non riesco a ottenere il risultato dalla query SQL in una tabella HTML. Attualmente I .send i dati in una pagina HTML utilizzando express.Visualizzazione di un set di dati JSON come tabella con Node.js e Express

codice che uso:

var http = require('http'); 
    http.createServer(function(req, res) {}); 
     var mysql = require("mysql"); 
     var express = require('express'); 
     var app = express(); 
     console.log('Creating the http server'); 
     con.query('SELECT id ,name FROM customer', function(err, rows, fields) 
    { 
     console.log('Connection result error '+err); 
     console.log('num of records is '+rows.length); 

     app.get('/', function (req, res) { 
      res.send(rows); 
     }); 

    }); 

    app.listen(3002, function() { 
     console.log('Example app listening on port 3000!'); 
    }) 

Questo stampa tutti i dati dal mio istruzione SQL sulla mia pagina HTML:

{"id":"1","name":"Robert"} 
{"id":"2","name":"John"} 
{"id":"3","name":"Jack"} 
{"id":"4","name":"Will"} 

quello che mi piacerebbe avere come risultato è:

id    Name 
1    Robert 
2    John 
3    Jack 
4    Will 
..etc 

E 'possibile farlo anche nel nodo JS?

+0

Sto cercando di creare un tabella Spiacente per i suggerimenti errati –

+0

Quindi stai provando a visualizzare il set di risultati in una tabella in HTML? (Creare una tabella è, in termini di database, una cosa diversa) – leroydev

+0

Vorrei creare una tabella nella mia pagina HTML Non nel mio database –

risposta

2

Ti consiglio di guardare Jade. È un motore di template per il nodo js che può essere usato per creare pagine html. È facile da usare e molto flessibile.

Un buon tutorial si trova here. Ti mostra come creare un semplice sito web con Node, Express e Jade ed è un buon punto di partenza secondo me.

Per risolvere il tuo problema con Jade ci sono diverse risposte in stackoverflow come here.

+0

Grazie per il suggerimento che ho dato a Jade e sono riuscito a ottenere un modello insieme, ma non so ancora come ottenere un tavolo nella mia pagina. Dove inserisco il codice per il tavolo? (layout o indice) –

+0

Se la tua domanda si riferisce al tutorial che ho consigliato, inserirò il codice nell'indice (ma non ha molta importanza). Più avanti il ​​tutorial spiega nella parte app.get (...) che res.render (...) viene utilizzato per visualizzare il layout sul lato client. Il tutorial è davvero buono, quindi basta andare passo dopo passo e assicurarsi di avere un'idea di cosa sta succedendo. All'inizio Jade può essere fonte di confusione, ma si limita a giocare un po 'e vedere cosa succede – Urknecht

3

Simile a Jade si potrebbe usare Embedded JS

<table> 
    <tr> 
    <th>id</th><th>Name</th> 
    </tr> 

    <% for (var i = 0; i < data.length; i++) { %> 
    <tr> 
     <td><%= data[i].id %></td> 
     <td><%= data[i].name %></td> 
    </tr>  
    <% } %> 
</table> 

Ciò scorrere un array di oggetti (che ho salvato data e popolare una tabella basata su quello.

Problemi correlati