Jump to content


Photo

Alterar Foto Do Upload


  • Faça o login para participar
27 replies to this topic

#1 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 10/05/2008, 20:53

Olá Comunidade sou novo aqui e ja vim com duvidas..hehehe..bom estou com uma duvida..na verdade eu nao sei...e queria aprender..

eu tenho o codigo que exclui e adiciona a foto ao banco de dados e na pasta...como faço para alterar a foto se eu quiser??


Obrigado - Tom

#2 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 10/05/2008, 21:14

Olá Tom_wm!
Seja bem vindo ao fórum WMO! =)

Alterar a foto em que sentido seria?

Edição feita por: lwirkk, 10/05/2008, 21:15.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#3 dgt

dgt

    diego^SCFC

  • Usuários
  • 281 posts
  • Sexo:Masculino
  • Localidade:Recife-PE
  • Interesses:Java, Delphi, PHP, SQL, Modelagem de Dados, CSS, Lógica de Programação (Algoritmos), Teoria em Banco de Dados

Posted 10/05/2008, 22:41

Se a foto existir, adicione o código que faz exclui-lo da pasta e logo após coloque o código de adicionar.

O código você já tem em mãos.
Posted Image

#4 tempest

tempest

    12 Horas

  • Usuários
  • 131 posts
  • Sexo:Masculino
  • Localidade:Caçador, SC
  • Interesses:Php, Mysql e interatividade!

Posted 10/05/2008, 23:04

eu tenho o codigo que exclui e adiciona a foto ao banco de dados e na pasta...como faço para alterar a foto se eu quiser??



De uma pesquisada sobre a Biblioteca GD :click:
Posted Image
Css - Flash - Php?...
<? echo "Compartilhar é uma boa forma de aprender"; ?>

#5 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 11/05/2008, 01:43

Olá Pessoal...gostei do forum pessoal bem prestativo :D

bom vamos la:

lwirkk
seria assim..o cara adicionou a foto e blz..ai ele cansou dela..e quer mudar..ai ele vai em uma parte onde altera...e poem uma outra foto..soh q teria que excluir aquela antiga e por essa nova ;)

dgt
certo..mas nao tem aquele negocio la de update? etc? era isso que eu queria saber fazer ;)

tempest
hmmm ok! vo dar um molhada sim! brigadao!


Obrigado a todos :D

Abraços - Tom

#6 dgt

dgt

    diego^SCFC

  • Usuários
  • 281 posts
  • Sexo:Masculino
  • Localidade:Recife-PE
  • Interesses:Java, Delphi, PHP, SQL, Modelagem de Dados, CSS, Lógica de Programação (Algoritmos), Teoria em Banco de Dados

Posted 11/05/2008, 03:37

Ah tá!

Seria isso?
UPDATE tabela SET campo='$campo' WHERE id='$id'

Porque update no servidor não dá. Só excluindo a antiga e inserindo a nova.
Posted Image

#7 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 11/05/2008, 11:31

Você já tem o script de upload, criar e excluir, posta ele aí pra gente que te ajudamos a fazer essa implementação.

Seria como o dgt disse, daria um UPDATE no banco de dados, e depois excluir a foto antiga e adicionar a nova.
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#8 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 11/05/2008, 13:38

Olá dgt entao..eu axo q seria isso mesmo q vc ta dizendo..excluir e depois adicionar a nova..

lwirkk certo...abaixo estao os codigos ;)

aqui vao eles:

inserir.php
<?php
	$foto_int = $_FILES['foto_int']['name'];
	$caminho = "integrantes/";
	
	if (!empty ($_FILES['foto_int']['name']))
	{
	if (file_exists("caminho/{$_FILES['foto_int']['name']}"))
	die ("A Foto já Existe.");
	
	if (move_uploaded_file($_FILES['foto_int']['tmp_name'], "$caminho/{$_FILES['foto_int']['name']}"))
	{
	echo "o upload da foto" . $_FILES['foto_int']['name']." foi concluido com sucesso.";
	}
	else 
	echo "o arquivo não pode ser enviado.";
	}
	else
	die("selecione o arquivo a ser enviado");


	$sql = "Select * from integrantes where nome ='".$nome."'";			
	$rset = mysql_query($sql);
	$total = mysql_num_rows($rset);
	if ($total > 0)	
		echo "<br>" .$nome." já existe no banco!";			
	else
	{	
		$sql = mysql_query("INSERT INTO integrantes (nome, foto_int, apelido, datadia, datames, dataano, instrumento, time, musica, lugar, esporte, dorme, fato, idolo, email, festa, comer, bebida, signo, frase, defeito, qualidade, medo, cantor, cantora, mania, sonho)
				Values ('{$_POST['nome']}', '".$foto_int."','{$_POST['apelido']}','{$_POST['datadia']}','{$_POST['datames']}','{$_POST['dataano']}','{$_POST['instrumento']}','{$_POST['time']}','{$_POST['musica']}','{$_POST['lugar']}','{$_POST['esporte']}','{$_POST['dorme']}','{$_POST['fato']}','{$_POST['idolo']}','{$_POST['email']}','{$_POST['festa']}','{$_POST['comer']}','{$_POST['bebida']}','{$_POST['signo']}','{$_POST['frase']}','{$_POST['defeito']}','{$_POST['qualidade']}','{$_POST['medo']}','{$_POST['cantor']}','{$_POST['cantora']}','{$_POST['mania']}','{$_POST['sonho']}');") OR DIE (mysql_error());		
		$rset = mysql_query($sql); 
		echo "<br> Integrante inserido com sucesso! ";		
	}
?>


excluir.php
<?php
							
							$rset = mysql_query("Select * from integrantes") or die (mysql_error()); 
							
							$diretorio = 'integrantes\\'; 

														
							if (mysql_num_rows($rset) > 0)
							{
								while ($linha = mysql_fetch_assoc($rset))
								{			
									$arquivo = $diretorio.$linha['foto'];
									
									if (file_exists($arquivo) && is_file($arquivo))
									{
										unlink($arquivo); // exclui o arquivo do servidor
									}
									}

								$sql = "DELETE FROM integrantes WHERE idint = $id";	
								if (mysql_query($sql)!==FALSE)
								{
									echo "Registro excluido com sucesso! ";
								}
								else
								{
									exit(mysql_error());
								}
							}
							else
							{
								echo "Não há Cadastros";
							}
							?>

Obrigado por me ajudar ;)

Tom

#9 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 11/05/2008, 16:16

inserir.php
Modificado com is_uploaded_file();

<?php
	$foto_int = $_FILES['foto_int']['name'];
	$caminho = "integrantes/";
	
	if (!empty ($_FILES['foto_int']['name']))
	{
	if (file_exists("$caminho/{$_FILES['foto_int']['name']}"))
	die ("A Foto já Existe.");
	
	if (is_uploaded_file($_FILES['foto_int']['tmp_name']) and move_uploaded_file($_FILES['foto_int']['tmp_name'], "$caminho/{$_FILES['foto_int']['name']}"))
	{
	echo "o upload da foto" . $_FILES['foto_int']['name']." foi concluido com sucesso.";
	}
	else 
	echo "o arquivo não pode ser enviado.";
	}
	else
	die("selecione o arquivo a ser enviado");


	$sql = "Select * from integrantes where nome ='".$nome."'";			
	$rset = mysql_query($sql);
	$total = mysql_num_rows($rset);
	if ($total > 0)	
		echo "<br>" .$nome." já existe no banco!";			
	else
	{	
		$sql = mysql_query("INSERT INTO integrantes (nome, foto_int, apelido, datadia, datames, dataano, instrumento, time, musica, lugar, esporte, dorme, fato, idolo, email, festa, comer, bebida, signo, frase, defeito, qualidade, medo, cantor, cantora, mania, sonho)
				Values ('{$_POST['nome']}', '".$foto_int."','{$_POST['apelido']}','{$_POST['datadia']}','{$_POST['datames']}','{$_POST['dataano']}','{$_POST['instrumento']}','{$_POST['time']}','{$_POST['musica']}','{$_POST['lugar']}','{$_POST['esporte']}','{$_POST['dorme']}','{$_POST['fato']}','{$_POST['idolo']}','{$_POST['email']}','{$_POST['festa']}','{$_POST['comer']}','{$_POST['bebida']}','{$_POST['signo']}','{$_POST['frase']}','{$_POST['defeito']}','{$_POST['qualidade']}','{$_POST['medo']}','{$_POST['cantor']}','{$_POST['cantora']}','{$_POST['mania']}','{$_POST['sonho']}');") OR DIE (mysql_error());		
		$rset = mysql_query($sql); 
		echo "<br> Integrante inserido com sucesso! ";		
	}
?>

O alterar, seria simples fazer uma modificação com base no inserir:

Começando...
Em:
if (file_exists("caminho/{$_FILES['foto_int']['name']}"))
die ("A Foto já Existe.");

Poderia colocar assim:
if(file_exists("$caminho/{$_FILES['foto_int']['name']}")){
unlink("$caminho/{$_FILES['foto_int']['name']}");
}

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#10 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 11/05/2008, 18:31

Olá lwirkk

vamos ver se entendi...

aquele is_uploaded_file(); nao tem nada haver com a questao de alterar certo? pelo q li no link..

agora em relacao a fazer a alteracao..eh apenas isso? :blink:

soh modificando aquela linha e nada mais? B)

vou fazer o teste quando estiver em casa..ai ja retorno respostas!

Obrigado lwirkk!!

Tom

#11 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 11/05/2008, 18:43

Olá lwirkk

vamos ver se entendi...

aquele is_uploaded_file(); nao tem nada haver com a questao de alterar certo? pelo q li no link..

agora em relacao a fazer a alteracao..eh apenas isso? :blink:

soh modificando aquela linha e nada mais? B)

vou fazer o teste quando estiver em casa..ai ja retorno respostas!

Obrigado lwirkk!!

Tom

A função is_uploaded_file() apenas verifica se o arquivo foi enviado através de POST HTTP, para evitar uso malicioso dos campos de upload de arquivo em formulários (segurança mesmo =))

Modificando essas linhas, ele apenas deletará o arquivo caso exista e fará o upload normal do novo arquivo, mas falta modificar para atualizar no banco de dados. =)
Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#12 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 11/05/2008, 19:21

Olá lwirkk

vamos ver se entendi...

aquele is_uploaded_file(); nao tem nada haver com a questao de alterar certo? pelo q li no link..

agora em relacao a fazer a alteracao..eh apenas isso? :blink:

soh modificando aquela linha e nada mais? B)

vou fazer o teste quando estiver em casa..ai ja retorno respostas!

Obrigado lwirkk!!

Tom

A função is_uploaded_file() apenas verifica se o arquivo foi enviado através de POST HTTP, para evitar uso malicioso dos campos de upload de arquivo em formulários (segurança mesmo =))

Modificando essas linhas, ele apenas deletará o arquivo caso exista e fará o upload normal do novo arquivo, mas falta modificar para atualizar no banco de dados. =)


certo..ja adicionei a funcao is_uploaded_file()..bom saber disso =)

e verdade..tem o banco de dados..q seria com a funcao UPDATE?

Abraços - Tom

#13 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 11/05/2008, 19:59

Sim seria a função UPDATE ou outros modos também que existem.

Você poderia usar algo como: (exemplo do dgt)

UPDATE integrantes SET nome='{$_POST['nome']}', foto_int='{$foto_int}' WHERE ...


Algo assim, e os 3 pontos ali, são para você poder fazer um SELECT ali ou antes, pegando o ID ou algo dessa tabela para saber qual campo fazer a modificação (referência).

Edição feita por: lwirkk, 11/05/2008, 20:01.

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)

#14 tom_wp

tom_wp

    Novato no fórum

  • Usuários
  • 13 posts
  • Sexo:Masculino
  • Localidade:São Carlos/SP

Posted 11/05/2008, 20:07

certo..vou fazer isso e ja dou a resposta...mas estou com 1 duvida...

e quando a pessoa quiser mudar soh o nome..ow soh o apelido...e a foto nao ker mudar...como vai faze? pq dai vai excluir a foto..e nao poderia excluir...nao eh?

pintou essa duvida agora!

Abraços e Obrigado!

#15 lwirkk

lwirkk

    Veterano

  • Usuários
  • 1314 posts
  • Sexo:Não informado

Posted 11/05/2008, 20:13

Mas a condição:
if (!empty ($_FILES['foto_int']['name']))
	{
	if (file_exists("$caminho/{$_FILES['foto_int']['name']}"))
	die ("A Foto já Existe.");
	
	if (is_uploaded_file($_FILES['foto_int']['tmp_name']) and move_uploaded_file($_FILES['foto_int']['tmp_name'], "$caminho/{$_FILES['foto_int']['name']}"))
	{
	echo "o upload da foto" . $_FILES['foto_int']['name']." foi concluido com sucesso.";
	}
	else 
	echo "o arquivo não pode ser enviado.";
	}
	else
	die("selecione o arquivo a ser enviado");

Você poderia colocar para que se estiver vazio o form de upload, não trabalhar com fotos:
Da parte que citei acima, a que deveria ser retirada para ele não dar error ou algo seria o ELSE() que faz parte do IF que verifica se foi postado algo:
else
	die("selecione o arquivo a ser enviado");

Posted Image
"Se quiser ser feliz por um dia, vingue-se; se quiser ser feliz por uma vida inteira, perdoe."

Muito Obrigado à todos do fórum, e à toda equipe do fórum! =)




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq