Guest Renan Moreira Postado Outubro 21, 2007 Denunciar Share Postado Outubro 21, 2007 Olá galera....to com uma duvida aqui num script de destaques que uso...gostaria de saber como faço para que só seja possível fazer upload de imagens ou arquivos com estenções pre-determinadas....no caso preciso das extencões (gif/jpg/jpeg)já vi alguns códigos mais não consegui aplica-los no script....segue abaixo os 2 aquivos do scriptcadastrar.php<style type="text/css"><!--.style1 { font-size: 9px; font-family: Verdana, Arial, Helvetica, sans-serif;}--></style><form action="?pg=../estrutura/destaques/cadastrar_db.php" method="post" enctype="multipart/form-data"><h3>Cadastro de Destaque </h3><table width="440" border="0" align="center" cellpadding="2" cellspacing="0"> <tr><td colspan="2" align="right" style="border-bottom:1px solid #cccccc">*Campos Obrigatórios</td></tr><? if($usernivel == "1") {?><tr valign=middle> <td align=right style="border-bottom:1px solid #cccccc"><b>Franquia:</b></td> <td width="320" style="border-bottom:1px solid #cccccc"> <select name="id_franquia"><? $sql = mysql_query("SELECT * FROM franquias");while($dados=mysql_fetch_array($sql)){ echo "<option value=$dados[id]>$dados[cidade]</option>";}?> </select> </td> </tr><? } else {?><input name='id_franquia' type='hidden' size=45 value="<? echo $idfranquia?>"><? }?> <tr> <td width="140" align="right" valign="middle" style="border-bottom:1px solid #cccccc"><strong>Titulo:</strong></td> <td width="320" valign="middle" style="border-bottom:1px solid #cccccc"> <strong> <input name='titulo' type='text' id="nome" size=45> </strong></td> </tr> <tr> <td width="140" align="right" valign="middle" style="border-bottom:1px solid #cccccc"><strong>Descrição:</strong></td> <td valign="middle" style="border-bottom:1px solid #cccccc"><strong> <textarea name="descricao" cols="34" rows="5"></textarea> </strong></td> </tr> <tr> <td width="140" align="right" valign="middle" style="border-bottom:1px solid #cccccc"><strong>Link:</strong></td> <td width="320" valign="middle" style="border-bottom:1px solid #cccccc"><strong> <input name='link' type='text' id="titulo" size="45" /> </strong></td> </tr><tr valign=middle> <td align=right style="border-bottom:1px solid #cccccc"><b>Imagem:</b></td> <td width="320" style="border-bottom:1px solid #cccccc"> <input name="imagem" type="file" id="arquivo" size="30"></td> </tr><tr valign=middle> <td align=right style="border-bottom:1px solid #cccccc"> </td> <td align="center" style="border-bottom:1px solid #cccccc"><span class="style1">Atenção! O tamanho das imagens deve ser de exatamente <strong>200x130 </strong></span></td></tr></table> <table align="center"> <tr> <td width="436" colspan="2"> <p align="center"><font size="1" face="Verdana, Arial, Helvetica, sans-serif"> <input type='submit' value='Cadastrar'> </font></p></td> </tr> </table></form>[/codebox]cadastrar_db.php[code]<? $id_franquia = $_POST[id_franquia]; $titulo = $_POST[titulo]; $descricao = $_POST[descricao]; $link = $_POST[link]; $data_hora = date("Y-m-d H:i:s"); $imagem = $_POST[imagem]; $uploaddir="../images/destaques/"; if($imagem != "none") {// verifica campo arquivo if (move_uploaded_file($_FILES['imagem']['tmp_name'], $uploaddir . $_FILES['imagem']['name'])) { $nome_arquivo = $_FILES['imagem']['name']; $var1 = "$nome_arquivo"; }} $query = mysql_query("INSERT INTO destaques VALUES ('','$id_franquia','$titulo','$descricao','$link','$data_hora','$var1')"); ?> <h3>Destaque Cadastrado com Sucesso!</h3>[/code]iai galera... alguém pode me ajudar a travar o script pra fazer upload somente de gif e jpg?desd já agradeço a quem ajudar... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ESerra Postado Outubro 21, 2007 Denunciar Share Postado Outubro 21, 2007 O modo mais simples (eu acho) é com uma expressão regular que teste o TYPE do arquivo... tipo isso (vai liberar apenas GIF e JPEG)...<?php $tipoarq = $_FILES['imagem']['type']; if(!eregi("^(image)\/(pjpeg|jpeg|gif)$", $tipoarq)){ echo "O arquivo enviado não é válido"; }else{ //Aqui você coloca o código que está utilizando para enviar atualmente... } ?>Um detalhe importante é, alguns tipos de imagens permitem comentários nos cabeçalhos, e isso pode ser usado para inserir algum comando PHP que pode ser interpretado no servidor, o que por si só gera um problema de segurança... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest Renan Moreira Postado Outubro 22, 2007 Denunciar Share Postado Outubro 22, 2007 cara.... funciono beleza....obrigado ai viu.... Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Guest Renan Moreira
Olá galera....
to com uma duvida aqui num script de destaques que uso...
gostaria de saber como faço para que só seja possível fazer upload de imagens ou arquivos com estenções pre-determinadas....
no caso preciso das extencões (gif/jpg/jpeg)
já vi alguns códigos mais não consegui aplica-los no script....
segue abaixo os 2 aquivos do script
cadastrar.php
cadastrar_db.php
iai galera... alguém pode me ajudar a travar o script pra fazer upload somente de gif e jpg?
desd já agradeço a quem ajudar...
Link para o comentário
Compartilhar em outros sites
2 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.