0
Initially for clarification, I’m trying to create a hybrid html, javascript and css app.
objectively, my obstacle is to display on the user screen your avatar, which is in a Mysql database directory on my computer.
I can send the image by Json with the Formdata method without problems. At the time of returning the login with the user data it displays the information that armezeno with localStorage.setItem. But the image it displays only the name with the file path.
I’ve done a lot of research, I broke my head and I couldn’t. If you can help me, thank you. I’ll send my codes
Log in
$(document).ready(function(){
$.ajax({
type:'post', //Definimos o método HTTP usado
dataType: 'json', //Definimos o tipo de retorno
url: 'http://xxxxx/classes/vlogin.php', //Definindo o arquivo onde serão buscados os dados
data:{
nemail: email,
nsenha: senha,
},
success: function(dados){
if (dados == false){
$("#btn").show();
$("#menssagem_login").html("Login ou senha Invalidos");
}
else{
localStorage.setItem('id', dados[0]);
localStorage.setItem('nome', dados[1]);
localStorage.setItem('email', dados[2]);
localStorage.setItem('estado', dados[3]);
localStorage.setItem('senha', dados[4]);
localStorage.setItem('tipo', dados[5]);
localStorage.setItem('data', dados[6]);
localStorage.setItem('imagem', dados[7]);
// var obj = JSON.parse(dados);
// var obj = jQuery.parseJSON(dados); //tratar os dados
// var obj = $.parseJSON(dados); //tratar os dados
window.location = "estrutura/perfil.html";
console.log(dados);
}
}
});
});
$email = $_POST['nemail'];
$senha = $_POST['nsenha'];
$pasta = 'fotos/';
include "conexao.php";
$link = conexao();
$sql = "SELECT * FROM usuario WHERE email = '$email' AND senha = '$senha' AND ativo = 0";
$resultado = mysqli_query($link, $sql) or die (mysqli_error($link));
$vazio = mysqli_num_rows($resultado);
if($vazio == ''){
echo json_encode(false);
}
else{
$registro = mysqli_fetch_array($resultado);
// $registro = mysqli_fetch_object($resultado);
// $imagem1 = scandir($pasta,$imagem);
// $lista_dir = scandir($pasta);
// $img;
// foreach ($lista_dir as $registro['imagem']) {
// $img;
// }
$id = $registro['id'];
$nome = $registro['nome'];
$email = $registro['email'];
$estado = $registro['estado'];
$senha = $registro['senha'];
$tipo = $registro['tipo'];
$data = $registro['data'];
$imagem = $pasta.$registro['imagem'];
// $imagem= $_FILE[$pasta][ $registro['imagem']];
// $imagem= base64_encode($imagem);
$retorno= array($id,$nome,$email,$estado,$senha,$tipo,$data,$imagem);
echo json_encode($retorno);
// echo json_encode($registro);
}
function carrega_perfil(){
var nome = localStorage.getItem('nome');
var email = localStorage.getItem('email');
var estado = localStorage.getItem('estado');
var tipo = localStorage.getItem('tipo');
var data = localStorage.getItem('data');
var imagem = localStorage.getItem('imagem');
// document.getElementById('status').innerHTML=nome+"<br>"+email;
document.getElementById('status').innerHTML=nome;
document.getElementById('avatar').innerHTML= "<img src="+imagem+" />";
console.log(nome);
Where you’re trying to show the picture?
– Sam
Oops, I was trying to show the image in an HTML, the code did not appear
– Daniel Dias
Document.getElementById('avatar'). innerHTML= "<img src="+image+" />";
– Daniel Dias
But I did. It was quite simple. In the $php folder variable where the images are I changed to the full path of the server address. Thanks
– Daniel Dias