Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

zBuuush

Exibir Foto do Usuário Logado?!

Recommended Posts

Olá pessoal :coolio:

Estou montando um pequeno sistema de usuários, e estou programando a parte de foto de cada usuário cadastrado.

Consegui no formulário de cadastro enviar a foto para o banco, sem problemas.

 

Mas a parte de visualizar essas fotos me dificultaram um pouco, pois eu quero que seja mostrada apenas a foto da SESSION do usuário logado.

 

Vai aqui o código que faz exibir a imagem (tentei fazer da minha forma):

 

exibe_imagem_foto.php

<?
include('inc/connect.php'); 


$login = $_SESSION['login'];


$query = "SELECT * FROM usuarios where login = $login";
$resultado = mysql_query($query);


$type = mysql_result($resultado, 0, "type"); 
$foto = mysql_result($resultado, 0, "foto"); 
header("Content-type: $type"); 
print $foto;


?>

E também o código da página que irá exibir a foto do usuário logado:

 

site.php

<?php

$sql = "SELECT * FROM usuarios WHERE login = '$logado'";
$query = mysql_query($sql);

while ($campo = mysql_fetch_array($query)) {

 $id   = $campo['0']; 
  $foto   = $campo['1'];
  $type   = $campo['2'];

echo "<img src='exibe_imagem_foto.php?id=$id' border='1'><br><br>";
}
?>

Na página "site.php" já foi iniciada a session no topo do código, após verificado login e senha:

<?php
include ('../inc/connect.php');

session_start();


if((!isset ($_SESSION['login']) == true) and (!isset ($_SESSION['senha']) == true))

{
    unset($_SESSION['login']);
    unset($_SESSION['senha']);
    header('Location:../index.php');
}

$logado = $_SESSION['login'];


?>

Eai, alguém consegue? =D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara é fácil fazer o que vc está falando.

faz o upload daa imagem para o servidor... dai quando enviar salva a url da imagem no banco de dados, junto com is dados do usuário.

 

depois quando o cara tiver logado, você busca essa a url que salvou no banco de dados...

Compartilhar este post


Link para o post
Compartilhar em outros sites

o zBuuush, estava dando uma olhada nos codigos, no arquivo exibe_imagem_foto.php você não precisa buscar os dados na session, pois você já está enviando via get o id do usuario, então é só pegar o id e buscar no banco de dados como mostra abaixo, tenta fazer assim pra ver se da certo.

 

exibe_imagem_foto.php

<?
include('inc/connect.php'); 

if(isset($_GET['id']) && ctype_digit($_GET['id'])){ //ctype_digit verifica se o id é numerico para evitar sql inject
$id = $_GET['id']; //Recebe o id via Get

$query = "SELECT * FROM usuarios where id = $id";
$resultado = mysql_query($query);

if(mysql_num_rows($resultado)==1){ //Verifica se realmente existe um usuario
     $fetch = mysql_fetch_array($resultado);
     $type = $fetch["type"]; //Pega o tipo da imagem
     $foto = $fetch["foto"]; //Pega a imagem
 
     header("Content-type: $type"); //Configura o cabeçalho para o tipo de imagem
     switch($type){  //Deacordo com o tipo de imagem mostra a imagem
        case 'image/jpeg': imagejpeg($foto, NULL, 100); break;
        case 'image/gif': imagegif($foto); break;
        case 'image/png': imagepng($foto, NULL, 0); break;
     }
}
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.