Ir para conteúdo

Arquivado

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

Bill Grotes

Mudar nome da imagem na hora do upload

Recommended Posts

Bom, já fiz várias pesquisas de como funciona e como fazer, mas tenho dificuldade de aplicar em meu código.
É o seguinte, o sistema pega a foto.png e coloca no servidor, ai se eu pegar outra foto e upar com o mesmo nome, a foto será reposta no lugar da primeira upada. Queria saber como faço para alterar os nomes das imagens na hora do upload não causar transtorno nos usuários do meu site. Já vi vários tutoriais usando MD5 mas não aplicar ao meu código, alguém poderia me ajudar?

 

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


$id= $_SESSION['SESS_MEMBER_ID'];
$user= $_SESSION['SESS_FIRST_NAME'];






if (!isset($_FILES['image']['tmp_name'])) {
echo "";
}else{
$file=$_FILES['image']['tmp_name'];
$image= addslashes(file_get_contents($_FILES['image']['tmp_name']));
$image_name= addslashes($_FILES['image']['name']);
$image_size= getimagesize($_FILES['image']['tmp_name']);




if ($image_size==FALSE) {


echo "Isso não é uma imagem!";


}else{


move_uploaded_file($_FILES["image"]["tmp_name"],"imagens/" . $_FILES["image"]["name"]);


$location="imagens/" . $_FILES["image"]["name"];


$update2=mysql_query("UPDATE postcomment SET pic = '$location' WHERE commentedby='$user'");
$update3=mysql_query("UPDATE message SET picture = '$location' WHERE user='$user'");

mysql_close($con);
if(!$update=mysql_query("UPDATE membros SET profImage = '$location' WHERE membro_id='$id'")) {


echo mysql_error();




}
else{


echo '<script> location.href="index.php"; </script>';
exit();
}
}
}




?>

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tudo bem?

 

Você já pesquisou na documentação?

 

http://php.net/move_uploaded_file

 

bool move_uploaded_file ( string $filename , string $destination )

 

move_uploaded_file($tmp_name, "$uploads_dir/$name");

 

Você já pesquisou na documentação?

 

Ou seja:

 

Se você colocar:

 

move_uploaded_file($_FILES["image"]["tmp_name"], 'diretorio/nome_que_eu_quiser.png');

 

Ele vai salvar lá =)

move_uploaded_file($_FILES["image"]["tmp_name"],"imagens/" . md5($_FILES["image"]["name"].date('YmdHis')));

É só um exemplo =)

 

Espero ter ajudado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, tudo bem?

 

Você já pesquisou na documentação?

 

http://php.net/move_uploaded_file

 

bool move_uploaded_file ( string $filename , string $destination )

 

move_uploaded_file($tmp_name, "$uploads_dir/$name");

 

Você já pesquisou na documentação?

 

Ou seja:

 

Se você colocar:

 

move_uploaded_file($_FILES["image"]["tmp_name"], 'diretorio/nome_que_eu_quiser.png');

 

Ele vai salvar lá =)

move_uploaded_file($_FILES["image"]["tmp_name"],"imagens/" . md5($_FILES["image"]["name"].date('YmdHis')));

É só um exemplo =)

 

Espero ter ajudado.

Bom, fiz o que você disse, mas o extensão da imagem não é colocada no final do nome, mas já é praticamente a maratona andada! Muito Obrigado e lerei mais a documentação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para os nomes nunca se repetir você pode pegar o ID do usuário logado e colocar no nome das fotos, se quiser deixar mais complexo pega a atual data e o id do cara e joga na foto.

 

Ficaria mais ou menos assim, na page que você verifica se o usuário existe e deixa ele logar você cria uma SESSION['id'] que recebe o ID do cara, ai na page de upload faz $id = SESSION['id'].

 

move_uploaded_file($_FILES["image"]["tmp_name"], 'diretorio/'.$id.'');

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, segue uma dica, usa essa biblioteca > www.bittenagency.com

 

Vai te ajudar muito, boa reutilização de código.

 

A própria biblioteca já faz alteração do nome ao enviar, converte imagens e muito mais.

 

Segue o link acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por Sapinn
      Eu tenho um form e toda vez que alguém clicar no input eu quero que a borda de baixo mude a cor e quando ele clicar fora quero que volte ao normal quero isso para todos os campo de todos os foms que eu tiver
    • Por mbolzanes
      Olá.
       
      Preciso alterar o nome do meu tema na tray de MINHA SACOLA para MEU CARRINHO
      Alguém que possa ajudar?

    • Por AlexandreHenrique
      Olá 
      tenho uma função JS para mudar valor de atributos de uma imagem.
      A imagem é essa:
      <img src="capa.jpg"  data-desc="2018 - Aventura" alt="titulo do filme" onclick="teste(this,2);" id="video" />  A função:
      function teste(arg,p){ var pos = p; document.getElementById('video').src="novacapa.jpg"; // muda src document.getElementById('video').alt="Titulo do novo video"; // muda alt     document.getElementById('video').attr('data-desc', 'valor a atribuir'); // ??? } A função muda o "src" e "alt" mas não consigo mudar o valor do atributo 'data-desc", como faço isso?
      Essa é a linha em questão: 
      document.getElementById('video').attr('data-desc', 'valor a atribuir'); 
       
       
    • Por Lúcio Marques
      Boa tarde.
      Estou com um questão no woocommerce que o nome do usuário é mostrado junto ao produto da loja virtual, ficando assim:
      by lucio
      Tem como tirar este by nome do woocomerce.? Já pesquisei e conseguir tirar do wordpress, mas nada achei sobre woocommerce.
      Agradeço desde já
    • Por JOWEB
      Pessoal gostaria de mudar essa frase Você pode gostar também   
      no Tema ColorMag, consigo fazer isso pelo editor do wordpress ou terei que entra nas sub pasta via FTP e qual caminho seria?
      Tendei usar o inspetor do navegador, seguei nessa parte:
       
      <h4 class="related-posts-main-title"><i class="fa fa-thumbs-up"></i><span>Você pode gostar também</span></h4> 
×

Informação importante

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