fsphp Posted February 3, 2005 Report Share Posted February 3, 2005 Para enviar imagens para um diretório, a tag <form> tem que ter alguma informação específica. Tipo Mime?Estou colocando assim:<form method=post action="recebe.php" enctype=multipart/form-data> Quote Link to comment Share on other sites More sharing options...
0 Illidan Posted February 3, 2005 Report Share Posted February 3, 2005 Sim, é pra ser isso mesmo... mas só uma observação: atributos de tags HTML devem estar SEMPRE entre aspas simples ou duplas. Talvez nem seja isso o causador do seu problema, mas com certeza pode gerar muitos outros...você criou um campo <input type="file" /> nesse form e submeteu a imagem?? O que aconteceu? Quote Link to comment Share on other sites More sharing options...
0 fsphp Posted February 3, 2005 Author Report Share Posted February 3, 2005 Ok, vou usar as aspas sempre. Valeu a dica, pois eu pensei que quando estivesse usando apenas html elas não eram necessárias.No meu form eu coloquei:<input type="file" name="imagem"><input type="submit" name="submit" value="Enviar Imagem">Na página php que processa as informações eu coloquei:<?php$imagem = $_FILES['imagem']['name'];$tam_imagem = $_FILES['imagem']['size'];$arquivo_temporario = $_FILES['imagem']['tmp_name'];$tamanho_fixo = "N";if(!file_exists($imagem)) { echo "Arquivo da imagem não encontrado"; exit; }........Está parando nesse primeiro exit. Mencionando:Arquivo da imagem não encontrado. Quote Link to comment Share on other sites More sharing options...
0 Illidan Posted February 3, 2005 Report Share Posted February 3, 2005 você tem que salvar a imagem numa pasta após o upload:move_uploaded_file($_FILES['imagem']['tmp_name'], "dir/".$_FILES['imagem']['name']); Quote Link to comment Share on other sites More sharing options...
0 fsphp Posted February 3, 2005 Author Report Share Posted February 3, 2005 Ok, deu certo, só uma observação onde tem o "dir/" tem que ser o endereço completo do diretório. Isso eu falo para aqueles que também são iniciantes. No local de "dir/" eu coloquei:"C:/Arquivos de programa/EasyPHP1-7/www/diretório_criado/" (neste caso estou trabalhando localmente).COMO FAÇO SE ESSE ARQUIVO JÁ EXISTIR NO DIRETÓRIO, UMA VEZ QUE ELE ESTÁ SOBRESCREVENDO? Quote Link to comment Share on other sites More sharing options...
0 tfolima Posted February 3, 2005 Report Share Posted February 3, 2005 (edited) Está correto, você tambem poderia ter colocado o caminho em relação ao diretório de seu script, mas a opção ("C:/Arquivos de programa/EasyPHP1-7/www/diretório_criado/") é a mais recomendada Quanto ao nome do arquivo (não lembro se há uma função para verificar se existe um arquivo), mas você pode controlar tb via bd. Edited February 3, 2005 by tfolima Quote Link to comment Share on other sites More sharing options...
0 fsphp Posted February 3, 2005 Author Report Share Posted February 3, 2005 COMO FAÇO SE ESSE ARQUIVO JÁ EXISTIR NO DIRETÓRIO, UMA VEZ QUE ELE ESTÁ SOBRESCREVENDO? Via banco de dados eu consigo controlar sim, mas o problema é que ele está sendo sobrescrito no diretório. Será que se eu enviar primeiro o nome para o banco de dados e pedir para sair se já tiver um nome desse lá resolve? Acho que sim, né?Vou tentar depois eu posto o resultado. Quote Link to comment Share on other sites More sharing options...
0 tfolima Posted February 3, 2005 Report Share Posted February 3, 2005 (edited) Bom, você pd fazer uma consulta no bd e se este nome já existir, você pd colocar uma coisa tipo : nomedoarquivo1.jpg (utilizando aquelas funções de strings para identificar o ponto ,coisa e tal).Ae você transfere o arquivo:move_uploaded_file($_FILES['imagem']['tmp_name'], "dir/".$nomeimagem]); Agora eu lembrei, tem uma função file_exists(), pd tentar usar esta tbfalou Edited February 3, 2005 by tfolima Quote Link to comment Share on other sites More sharing options...
0 fsphp Posted February 3, 2005 Author Report Share Posted February 3, 2005 É mesmo, eu ia fazer uma consulta no banco de dados, ia gastar tempo e script. Também daria certo mas resolvi seguir sua sugestão e usei a função file_exists() e deu certo. Bem lembrado, valeu. Quote Link to comment Share on other sites More sharing options...
Question
fsphp
Para enviar imagens para um diretório, a tag <form> tem que ter alguma informação específica. Tipo Mime?
Estou colocando assim:
<form method=post action="recebe.php" enctype=multipart/form-data>
Link to comment
Share on other sites
8 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.