Jump to content
Fórum Script Brasil
  • 0

Renomeando Arquivos No Upload


ViniciusJau

Question

e ai pessoal, estou tentando fazer upload de fotos pro servidor, está funcionando certinho...

porém eu renomeio o arquivo .. e ele perde a extensão...

será qeu alguém ai tem alguma idéia do que eu posso fazer para ele não perder a extensão ??

$sub = $_POST['sub'];

$descricao = $_POST['descricao'];

$var1 = date("ymd");

$var2 = date("His");

$file_name = $var1 . $var2 . $categoria . $sub ;

$pasta = "fotos";

$dest = $pasta."/".$file_name;

if(!move_uploaded_file($file, $dest)) {

  echo "Não foi possível enviar o arquivo!";

  exit();

} else {

  echo "Arquivo enviado com sucesso!";

}

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Ola,

Primeiramente, cade o

$file=$_FILES["nome_do_campo"];
? Segundo, na sua variavel $file_name você não adicionou extensão nenhuma... Sugiro você fazer assim, após colocar o $file=$_FILES["nome_do_campo"];
$name=explode(".",$file["name"]); // Abre o nome do arquivo em uma array, cada vez q encontrar um . no nome do arquivo.

$len=count($name); // Aqui você pega quantos elementos tem no array... Normalmente são só 2... Mas caso você tenha um nome tipo "arquivo.config.php" você terá 3...

$len--; //Decrementa a variavel $len, pois os indices do array começam em zero...

$extension=$name[$len]; // Pega o ultimo elemento do array, que no caso é a extensão....

$file_name=$var1.$var2.$categoria.$sub".".$extension; //Finalmente, renomeia...
$dest = $pasta."/".$file_name; //Escreve a pasta de destino
A partir daí, você usa a move_uploaded_file... Não se esqueça do tmp_name
if(!move_uploaded_file($file["tmp_name"], $dest)) { 
  echo "Não foi possível enviar o arquivo!"; 
  exit();
} else {
  echo "Arquivo enviado com sucesso!"; 
}

Abraços,

Eduardo.

Link to comment
Share on other sites

  • 0

E ai eduardo beleza ??

então cara eu já tinha tentando mexer com o $_FILES.. mais só deu erro... e desse jeito que eu estava fazendo tava enviando oa rquivo...

eu montei do jeito que você falou e ele me deu erro junto na linha do $_FILES

saca só como eu montei o codigo:

seleciona.php

<form action="produto.php" method="POST" enctype="multipart/form-data">

Arquivo: <input type="file" name="arqui"><br>

<input type="submit" value="Enviar">

</form>

produto.php

$var1 = date("ymd");

$var2 = date("His");

$pasta = "fotos"

$file=$_FILES["arqui"];

$name=explode(".",$file["name"]); // Abre o nome do arquivo em uma array, cada vez q encontrar um . no nome do arquivo.

$len=count($name); // Aqui você pega quantos elementos tem no array... Normalmente são só 2... Mas caso você tenha um nome tipo "arquivo.config.php" você terá 3...

$len--; //Decrementa a variavel $len, pois os indices do array começam em zero...

$extension=$name[$len]; // Pega o ultimo elemento do array, que no caso é a extensão....

$file_name=$var1.$var2.$categoria.$sub".".$extension; //Finalmente, renomeia...

$dest = $pasta."/".$file_name; //Escreve a pasta de destino

if(!move_uploaded_file($file["tmp_name"], $dest)) {

echo "Não foi possível enviar o arquivo!";

exit();

} else {

echo "Arquivo enviado com sucesso!";

}

a logica eu consegui entender... mais não consegui fazer funcionar.. rs

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152k
    • Total Posts
      651.5k
×
×
  • Create New...