Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

json não aparece na página

Olá, instalei o mysql na minha máquina, criei a tabela de produtos e adaptei meu código, mas na hora de rodar a pagina fica em branco, o json não aparece a seguir montra todos os meus comandos:

mysql: mysql> CREATE TABLE produtos ( -> id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY, -> titulo varchar(255) DEFAULT NULL, -> descricao text, -> preco decimal(10,2) DEFAULT NULL); Query OK, 0 rows affected (0.44 sec)

mysql> insert into produtos(titulo, descricao, preco) -> values('Comecando com nodejs', 'livro introdutório sobre nodejs', 39.90); Query OK, 1 row affected (0.07 sec)

mysql> insert into produtos(titulo, descricao, preco) -> values('Comecando com javascript', 'livro introdutório sobre javascript', 39.90); Query OK, 1 row affected (0.05 sec)

mysql> insert into produtos(titulo, descricao, preco) -> values ('Comecando com express', 'livro introdutório sobre express', 39.90); Query OK, 1 row affected (0.06 sec)

mysql> desc produtos -> ; +-----------+---------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-----------+---------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | titulo | varchar(255) | YES | | NULL | | | descricao | text | YES | | NULL | | | preco | decimal(10,2) | YES | | NULL | | +-----------+---------------+------+-----+---------+----------------+ 4 rows in set (0.26 sec)

module.exports = function(app){
    app.get('/produtos', function(req, res){
        var mysql = require('mysql');
        var connection = mysql.createConnection({
            host : 'localhost',
            user : 'root',
            password : '',
            database : 'casadocodigo'            
        });

        connection.query('select * from produtos', function(err, results){
            res.send(results);
        });

        connection.end();
    });
}

C:\Users\dougl\Desktop\Alura\Node\casaDoCodigo>nodemon app [nodemon] 1.17.1 [nodemon] to restart at any time, enter rs [nodemon] watching: . [nodemon] starting node app servidor rodando

5 respostas

Douglas, tudo bem? Esse me parece ser o mesmo problema do outro tópico que você abriu, não?

Link do outro tópico: https://cursos.alura.com.br/forum/topico-lista-ejs-nao-compila-no-sublime-text-3-56704

Se for, vamos continuar conversando lá pra resolver? Evita tá abrindo vários tópicos com o mesmo problema tá bem? É ruim pra gente e pra você também, a conversa fica muito distribuída.

não, esse é outro tipo de problema neste, depois de ter incluído os livros no banco de dados, o JSON não aparece na tela, ela simplesmente fica em branco

connection.query('select * from livros', function(err, results){
    if (err){
        console.log(err);
        }
            res.send(results);
        });

mas no meu terminal é exibida a seguinte mensagem de erro: { [Error: ER_ACCESS_DENIED_ERROR: Access denied for user 'root'@'localhost' (using password: NO)] code: 'ER_ACCESS_DENIED_ERROR', errno: 1045, sqlMessage: 'Access denied for user \'root\'@\'localhost\' (using password: NO)', sqlState: '28000', fatal: true }

preciso colocar uma senha?

também estou participando desse tópico: https://cursos.alura.com.br/forum/topico-tabela-nao-aparace-no-localhost-55628#661217

se puder responder aqui ajuda

solução!

Douglas, eu também estou participando do outro tópico. Na verdade acho que esse acho que todos esses tópicos são o mesmo problema, você não está conseguindo acessar seu banco de dados e o erro que você acabou de postar mostra exatamente isso, parece que seu banco tem senha e você não está informando a senha para o node acessar.

Wanderson, era isso mesmo! Foi só eu colocar o a senha no código que deu tudo certo acho que essa senha eu tive que colocar porque pediu na instalação do mysql. Muito obrigado pela paciência e pela sua ajuda!

Ótimo Douglas! Bons estudos!