Ir para conteúdo

POWERED BY:

Arquivado

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

felipebmfaria

[Resolvido] Mostrar img da pasta, sendo o path salvo no banco;

Recommended Posts

Olá pessoal, eu aqui de novo...

 

Consegui fazer upload de imagem para dentro da pasta e o path salvei no banco. http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Agora eu queria exibir uma determinada imagem que esta na pasta...

O caminho desta pasta esta salvo no banco...

Como posso exibir uma determinada imagem?

 

Alguem?

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Conforme o aviso existente nesta área, não é permitida a postagem de dúvidas, motivo pelo qual este tópico será movido para o fórum principal deste assunto.

 

Desafios (PHP) http://forum.imasters.com.br/public/style_emoticons/default/seta.gif PHP

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá, talvez eu esteja sendo pouco claro...

 

na net existem N tutoriais de listagem de todos os arquivos de uma pasta, mas eu queria que exibisse um determinado arquivo da pasta...

 

quem vai determinar o arquivo? o conteudo do campo arquivo(ex:imagens/foto01.jpg) da minha tabela.

 

minha tabela possui os seguintes campos: ID, NOME, COMPLETA E ARQUIVO(que contem o endereço da foto upada na pasta)(ex:imagens/foto07.jpg)

 

entao para exibir a foto do id 7, por ex, eu "puxo" o endereco do campo ARQUIVO, correto? Eh assim que funciona, nao eh?

 

Alguem sabe como posso listar um determinado arquivo da pasta ?

Grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não entendi, e parece não ter sentido.

Se você quer exibir o arquivo bastaria colocar img src='campo da tabela', se o problema é saber o diretorio, dai faz sentido. Mas se você ta em diretorio superior você colocaria imagem/campo da tabela e assim sucessivamente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não entendi, e parece não ter sentido.

Se você quer exibir o arquivo bastaria colocar img src='campo da tabela', se o problema é saber o diretorio, dai faz sentido. Mas se você ta em diretorio superior você colocaria imagem/campo da tabela e assim sucessivamente.

Obrigado nknk, vou tentar do jeito que falou... daqui a pouco vou postar o resultado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não entendi, e parece não ter sentido.

Se você quer exibir o arquivo bastaria colocar img src='campo da tabela', se o problema é saber o diretorio, dai faz sentido. Mas se você ta em diretorio superior você colocaria imagem/campo da tabela e assim sucessivamente.

Nao consegui...

Tentei mais ou menos assim:

 

// o campo "arquivo" da tabela armazena o endereço da foto(ex: imagens/foto01.jpg)

$busca=mysql_query("select * from artigos where id = '$id'");

echo '<img src="$busca[3]">'; // minha tabela possui id, nome, completa, arquivo.

 

como posso exibir esta imagem?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Felipe!

 

Você já tentou dar um echo $busca[3]; só pra veo o que isso está retornanco? Provavelmente está retornando vazio ou algum "lixo". Caso contrário, não haveria motivos para usa imagem não aparecer.

 

Pode ser que a gravação no seu banco de dados estaja codificando a sua string que representa todo o caminho da images por conta do seu charset da página.

 

 

Exemplo: o caminho ao invés de 'dir1/dir2/imagem.jpg', pode estar 'dir1&Adir2&Aimagem.jpg' ou algo do tipo.

 

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Felipe!

 

Você já tentou dar um echo $busca[3]; só pra veo o que isso está retornanco? Provavelmente está retornando vazio ou algum "lixo". Caso contrário, não haveria motivos para usa imagem não aparecer.

 

Pode ser que a gravação no seu banco de dados estaja codificando a sua string que representa todo o caminho da images por conta do seu charset da página.

 

 

Exemplo: o caminho ao invés de 'dir1/dir2/imagem.jpg', pode estar 'dir1&Adir2&Aimagem.jpg' ou algo do tipo.

 

 

Abraço

Olá Nakid,

 

tentei assim:

<?php

$res1 = mysql_connect("localhost", "user", "pswd");

if ($res1){

$busca=mysql_query("select * from artigos where id = '16'");

echo "$busca[3]";

}

?>

 

nao retornou nada...

 

acessei meu banco... por exemplo, na linha do id 16, o campo arquivo mostra "imgs_dicas/volkswagen.jpg" ... imgs_dicas eh a pasta que eu determinei no upload.

 

existe alguma outra forma de exibir uma determinada imagem?

 

grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu caro felipebmfaria, você está fazendo errado... Na verdade, não é errado, mas está faltando um pedaço do seu script. Veja só, você efetua a busca no banco, mas você não está resgatando os valores de fato! Do jeito que está nunca vai funcionar. Veja como deve ficar seu script:

// o campo "arquivo" da tabela armazena o endereço da foto(ex: imagens/foto01.jpg)

$busca = mysql_query("select * from artigos where id = '$id'");

 

// O segredo está aqui! Você tem que utilizar a função

// mysql_fetch_array() para pegar os valores retornados!

$resultado = mysql_fetch_array($busca);

 

echo '<img src="$resultado[3]">'; // minha tabela possui id, nome, completa, arquivo.

 

// Poderia ser assim também (na minha opinião, é mais didático e compreensível)...

echo "<img src=\"" . $resultado["arquivo"] . "\" />";

Quanto ao uso das aspas nesse último trecho, eu sei que funciona sem ser desse jeito, mas não se preocupe(m), sou sistemático e gosto de construir meus scripts dessa maneira... http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

 

Ok? Teste aí! Veja se agora vai...

 

Abraço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deve ter funcionado pq você aspeou,o certo é echo $busca[3];

e é melhor utilizar o nome do campo do que a posição no vetor, assim você não se atrapalha quando tiver uma tabela com 20 campos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não deve ter funcionado pq você aspeou,o certo é echo $busca[3];

e é melhor utilizar o nome do campo do que a posição no vetor, assim você não se atrapalha quando tiver uma tabela com 20 campos.

Tirei as aspas, continua retornando vazio.

Troquei a posicao do vetor pelo nome do campo(echo $busca['arquivo'];), continua retornando vazio.

 

o que faço?

 

grato.

Compartilhar este post


Link para o post
Compartilhar em outros sites

<?php

include "config.php";

$sql = "Select * from fotos"; $query = mysql_query($sql);

 

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

$nome = $row["nomef"];

$foto = $row["thumbnail"];

$grande = $row["imagemG"];

 

echo "<table width=\"200\" border\"0\" aglin \"center\">";

echo "

<tr>

<td>$nomef</td>

</tr>

<tr>

<td><a href=\"$grande\"><img src=\"$foto\"></a></td>

</tr>

<tr>

<td><input name=\"produto\" type=\"checkbox\" value=\"$nomef\" /></td>

</tr>

";

echo "</table>";

};

?>

 

 

tenta ae. edite conforme sua necessidade.

 

abs

ml

Compartilhar este post


Link para o post
Compartilhar em outros sites

É isso aí Felipão!

 

Faltou o mysql_fetch_array.

 

Vou compartilhar o meu código com você:

 

 

 

 

essa é minha classe classDb.php

 

<?php
/* CLASSE BANCO DE DADOS */


class DB {

	public $con;
	/**
	 * Conecta ao banco de dados com os dados específicados no arquivo de configuração
	 */
	public function conectar_db(){
		
		try{
			//$this->con = @mysql_connect('HOST', 'USER', 'PASS');
			//@mysql_select_db('BANCO');
			
			$this->con = @mysql_connect('localhost', 'root', '');
			@mysql_select_db('BD2_SITE_ITABOM');
			if(mysql_error()){
				throw new Exception(mysql_errno($this->con).": ".mysql_error($this->con));
			}
		}catch(Exception $e){
			throw $e;
		}		
		return;
	}
	
	/**
	 * Fecha a conexão do banco de dados
	 */


	public function fechar_db() {
	
		try{
			@mysql_close($this->con);
			if(mysql_error()){
				throw new Exception(mysql_errno($this->con).":".mysql_error($this->con));
			}
		}catch(Exception $e){
			throw $e;
		}		
		return;
	}
	
	public function query($sql) {
		
		try{
			@mysql_query($sql);
			if(mysql_error()){
				$msg = mysql_errno($this->con)." - ".mysql_error($this->con);
				$msg .= " - SQL: ".$sql;
				throw new Exception($msg);
			}
				
		}catch(Exception $e){
			throw $e;
		}		
	}

	
	public function select($sql,$inicio = "",$maximo = ""){
		
		if(($inicio!="")&&($maximo!="")){
			$sql.=" LIMIT $inicio, $maximo";
		}elseif(($inicio=="")&&($maximo!="")){
			$sql.=" LIMIT $maximo";
		}
		
		$i=0;		
		
		try{
			$consulta = @mysql_query($sql);
			while($linhas = @mysql_fetch_array($consulta)){
				$i++;
				$resultado[$i]=$linhas;
			}
			if(mysql_error()){
				$msg = mysql_errno($this->con)." - ".mysql_error($this->con);
				$msg .= " - SQL: ".$sql;
				throw new Exception($msg);
			}
			@mysql_free_result($consulta);
		}catch(Exception $e){
			throw $e;
		}		
		$resultado['total']=$i;
		return $resultado;
	}




}


?>

 

 

 

para fazer select:

 

<?php
include ("classDb.php");

$sql = "
	SELECT
			 FOTO				
		FROM
		 MINHA_TABELA_FOTOS
	WHERE 
			 ID=16"


db = new DB;
$db->conectar_db();
$res = $db->select($sql);			
$db->fechar_db();

$path_foto = $res['1']['FOTO'];

?>
<img src="<?php echo $path_foto; ?>">

Espero que ajude!

 

ATENÇÃO: nao esqueca de alterar o HOST USER PASS E BANCO no classDb.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvido!!!! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

 

Muito obrigado a todos que ajudaram.

Funcionou perfeitamente!!!

Estou postando o codigo.

 

Obrigado mais uma vez.

 

<?php 

include "config.php";

$busca=mysql_query("SELECT * FROM tabela WHERE id = '$id'");
if(!mysql_num_rows($busca
echo 'Nenhum dado cadastrado na base de dados.';
}else{
while($ver=mysql_fetch_row($busca)){
$foto=$ver[3];  
?>

<img src="<?php echo "$foto"; ?>" /> <?php 
}
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

:)

 

Tamo ai pra isso cara.. :D

 

 

Boa sorte ae ! Tem um link ae pra gente dar uma olhada como ta o trampo ?

Vou entregar a pagina nos proximos dias... quando estiver no ar e tals, passo o link para a galera. Vlw pela força, mulletsp!

 

Abraços.

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.