ViniciusJau Postado Fevereiro 7, 2006 Denunciar Share Postado Fevereiro 7, 2006 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!"; } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Hawker Postado Fevereiro 7, 2006 Denunciar Share Postado Fevereiro 7, 2006 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. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ViniciusJau Postado Fevereiro 8, 2006 Autor Denunciar Share Postado Fevereiro 8, 2006 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 $_FILESsaca 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 destinoif(!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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Hawker Postado Fevereiro 8, 2006 Denunciar Share Postado Fevereiro 8, 2006 então, que erro exatamente deu aí?Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
ViniciusJau
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 ??
Link para o comentário
Compartilhar em outros sites
3 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.