1
Below my PHP code. It takes the data from the database, puts it in an array and then goes through a json_encode. However, it does not print anything, how to solve?
Note: Using print_r in the array it is possible to view the data perfectly
<?php
$user = "root";
$password = "";
$db = "angulardb";
$host = "localhost";
$con = mysqli_connect("localhost", $user, $password, $db);
if (mysqli_connect_errno()){
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$usuario = mysqli_query($con, "SELECT * FROM users");
if (!$usuario) {
echo "Não foi possível executar a consulta no banco de dados: " . mysql_error();
exit;
}
$return = array();
while ($dados = mysqli_fetch_assoc($usuario)) {
$return[] = $dados;
}
header('Content-Type: application/json');
echo json_encode($return);
?>
Database:
CREATE TABLE IF NOT EXISTS `users` (
`id` int(6) NOT NULL AUTO_INCREMENT,
`nome` varchar(50) NOT NULL,
`email` varchar(50) NOT NULL,
`pass` varchar(50) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;
INSERT INTO `users` (`id`, `nome`, `email`, `pass`) VALUES
(2, 'João Silva', '[email protected]', '123456'),
(3, 'Mario de Almeida', '[email protected]', '123456');
If the values coming from the array are not correctly coded or the function will not perform this conversion, they are all utf8 ?
– Gabriel Rodrigues
echo json_encode($return, JSON_PRETTY_PRINT);
– Diego Souza