Upload de arquivos e validação de tipo do mesmo
Publicado por davi vidal 06/11/2006
[ Hits: 9.864 ]
Homepage: https://linkedin.com/in/davividal
Pequeno script para enviar imagens para uma página da WEB e cadastrá-las em um banco de dados relacionando com produtos.
<?php
define("IMG","imagens/");
function enviar_fotos($n)
{
$consulta="SELECT MAX(id) FROM produtos";
$resultado=mysql_query($consulta);
$tiID=mysql_fetch_array($resultado);
$pID=$tiID[0];
for($i=0;$i<$n;$i++)
{
if (is_uploaded_file($_FILES["foto$i"]['tmp_name']))
{
echo "<br><b>Foto #".($i+1)."</b><br>";
$nfoto="foto$i";
$size = $_FILES[$nfoto]['size'];
if ($size > 1000000)
{
echo 'Arquivo muito grande. Por favor tente novamente.';
}
$cFT="SELECT MAX(id) FROM fotos WHERE id_imovel='$pID'";
$rFT=mysql_query($cFT) or die(mysql_error());
if(mysql_num_rows($rFT) or die(mysql_error()))
{
$nFT=mysql_fetch_array($rFT);
$mFT=$nFT[0];
$mFT++;
}
else
{
$mFT=0;
}
//$tipo=;
$tipo=exif_imagetype($_FILES[$nfoto]['tmp_name']);
$valido=true;
if (eregi("jpeg$",$tipo))
{
$extensao="jpg";
}
elseif (eregi("gif$",$tipo))
{
$extensao="gif";
}
elseif (eregi("tif[f]$",$tipo))
{
$extensao="tif";
}
elseif (eregi("png$",$tipo))
{
$extensao="png";
}
else
{
print_r($_FILES[$nfoto]);
$msg ="<br><center>Tipo de arquivo do arquivo $nfoto inválido!<br>";
$msg.=$_FILES[$nfoto]['type']."</center><br>";
erro($msg,false);
$valido=false;
}
$_FILES[$nfoto]['name']='i'.$pID.'f'.$mFT.'.'.$extensao;
if ($valido)
{
if (move_uploaded_file($_FILES[$nfoto]['tmp_name'],IMG.$_FILES[$nfoto]['name']))
{
echo '<br>Arquivo enviado!<br>Informações:<BR>';
$insercao="INSERT INTO fotos(id_prod,ext) VALUES('$pID','$extensao')";
$inserir=mysql_query($insercao);
}
else
{
echo '<br>Ocorreu um erro ao enviar o arquivo<BR>Informações:<BR>';
}
print_r($_FILES[$nfoto]);
echo "<center><br><img src=\"".IMG.$_FILES[$nfoto]['name']."\"><br></center>";
}
echo "<hr>";
}
}
}
function erro($mensagem,$grave)
{
echo "<center>$mensagem</center>";
if ($grave)
{
exit;
}
}
?>
Orion - extração e conversão de dados de arquivos texto e CSV
Papagaiando o XFCE com temas e recursos
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
Como cortar as partes de um vídeo com passagens de áudio em branco
Tiling automático no KDE Plasma
SNMP Scan no OCS Inventory só funciona com HTTPS corretamente configurado
Links importantes de usuários do vol (4)
GOG confirma suporte oficial ao sistema Linux: "o trabalho começo... (2)
Para os fãs de DOOM, um vídeo do Romero (com dublagem em pt-br disponí... (2)









