Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia pessoal, alguém pode me ajudar ? (Sou iniciante KKK)
Tenho uma página em HTML (index.htm) para upload de arquivos e imagens com o seguinte código:
<form action="envia_foto.php" method="post" enctype="multipart/form-data">
<div align="center">
<p> </p>
<p>
<input type="file" name="Arquivo" id="Arquivo">
<br>
</p>
<p>
<input type="submit" value="Enviar">
</p>
</div>
</form>
,........
E tenho a página em PHP (envia_foto.php) com o seguinte código
........
<html>
<head>
<title>Envia foto</title>
</head>
<body>
<?php $nome_temporario=$_FILES["Arquivo"]["tmp_name"]; $nome_real=$_FILES["Arquivo"]["name"]; copy($nome_temporario,"up/$nome_real"); ?>
<p align="center"><font size="7">Arquivo enviado com sucesso ! </font></p>
</body> </html>
A questão é a seguinte..
Gostaria de inserir um campo na página HTML que tem os botões de selecionar e enviar, que eu possar inserir um número, e que o arquivo que a pessoa está enviando seja renomeado com esse numero, ficando por exemplo 123.jpg o que antes seria IMG_20181010_1530.jpg, e um outro campo de caixa de seleção onde eu coloque os caminhos que possa ser salvo, no caso as pastas com nomes.
Caso possam me ajudar eu agradeço ... Esse código atual já está rodando só que salvando o nome original da imagem e em uma única pasta
.....
As imagens que anexei é de como está, de como desejo que esteja, e como comecei a a fazer o código mas não sei mesclar com o formulário atual

>
Em 08/10/2018 at 13:15, Paulo Cesar Di Cicco disse:
Vamos lá!
1) você precisa procurar sobre renomear aquivos no php = rename
2) você precisa procurar sobre criar diretórios no php = mkdir
3) você precisa agora desenhar a sua regra de negocio.
1) usuário sobe a imagem
2) faz upload para o servidor
3) verifica se existe o diretório que foi selecionado na página do form
4) se não existir você cria
5) após validação de diretórios vamos fazer o upload do $_FILES no diretório
6) renomear o arquivo com o enviado no form
7) Todo mundo feliz!
=)
Opa show, entendi a lógica total do funcionamento, os diretórios já existem (imagem 001 em anexo a esta mensagem) os campos dos forms já estão no local, já pesquisei algo sobre o rename, já que o mkdir não vou usar, o que não esta encaixando pra mim, é onde inserir o código que vai fazer o arquivo ser renomeado, e o código que vai direcionar o destino do arquivo com base no form, como eu disse, sou bem iniciante nesse ponto, brinquei bastante com HTML mas não sou profissional da área, então tem coisa que fica meio nebulosa pra entender kkk e como o site não é pra comercializar e sim pra uso próprio no trabalho pra facilitar minha vida, vou vendo ele nas horas vagas kk
PS: e no quesito renomear a ideia e que o codigo leia a extenção do arquivo, e no momento de renomear ele mantenha a extenção, pois pode ter arquivos .ZIP ou imagens .JPG ou bkp de sistema com extenção em .FDB
Fiz um exemplo, acredito que funcione para ti, só adaptar caso faltar algo.
<?php
$arquivo = $_FILES['Arquivo']; // pega o arquivo
$num_os = $_POST['numerodeos']; // pega o nome
$pasta = $_POST['selecaodepasta']; // pega a pasta
$ext = strtolower(substr($arquivo['tmp_name'], -4)); // pega a extensão do arquivo
$diretorio = ""; // variavel para o diretorio novo
$arquivo_novo = $num_os.$ext; // cria o novo nome mais a extensão
switch($pasta){ // selecionar a pasta que o usuario selecionou
case "fernando":
$diretorio = "Fernando/";
break;
case "joao":
$diretorio = "Joao"/
break;
// faça a mesma coisa para todas as pastas que tiver
}
// move o arquivo temporario passando a pasta + arquivo renomeado
move_uploaded_file($arquivo['tmp_name'], $diretorio.$arquivo_novo);
?>
Testa aí com o nome do seus campos, depois retorna o resultado para nós.
Vamos lá!
1) você precisa procurar sobre renomear aquivos no php = rename
2) você precisa procurar sobre criar diretórios no php = mkdir
3) você precisa agora desenhar a sua regra de negocio.
1) usuário sobe a imagem
2) faz upload para o servidor
3) verifica se existe o diretório que foi selecionado na página do form
4) se não existir você cria