Como adicionar um simples envio de imagem a um formulário?
Tenho um formulário html. Eu quero adicionar um recurso de upload de imagem simples para ele e ele será enviar a imagem para uma página de php chamado "next.pai". Alguma sugestão de como fazê-lo?
3
2 answers
Crie um formulário HTML como o seguinte:
<html>
<body>
<form action="next.php" method="post" enctype="multipart/form-data">
<label for="image">Image:</label>
<input type="image" name="image" id="image" /><br />
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
O teu "próximo".o ficheiro php poderia lidar com a imagem semelhante a esta:
<?php
if ($_FILES["file"]["error"] > 0)
echo "Error: " . $_FILES["image"]["error"] . "<br />";
else
{
echo "Upload: " . $_FILES["image"]["name"] . "<br />";
echo "Type: " . $_FILES["image"]["type"] . "<br />";
echo "Size: " . ($_FILES["image"]["size"] / 1024) . " Kb<br />";
echo "Stored in: " . $_FILES["image"]["tmp_name"];
}
Neste ponto, você pode torná-lo mais seguro, verificando o tipo e garantindo que é apenas jpg, gif, png, ou do tipo. Eu recomendaria copiar a imagem em 2 ou 3 tamanhos (polegar, médio, original), e excluí-la do diretório temporário. Você poderia usar ImageMagick para redimensionar as imagens e depois usar o sistema de ficheiros funções para mover e apagar as cargas temporárias.
3
Author: Josh, 2010-12-12 14:54:16
Não estou ciente de quaisquer meios de interagir com um ficheiro input
do lado do cliente, por isso terá de verificar/validar o servidor de ficheiros carregado (dentro do 'next.php ' script), mas isto deve ser suficiente:
<form action="path/to/next.php" method="post" enctype="multipart/form-data">
<fieldset>
<input type="file" name="picture" id="picture" />
</fieldset>
</form>
1
Author: David Thomas, 2010-12-12 15:10:43