Como adicionar um filtro?

Este fórum é para dúvidas onde a base da questão é a linguagem PHP.

Moderador: web

responder a dúvida

Como adicionar um filtro?

Mensagem por antonio duplo x Offline » Qua Fev 08, 2012 7:45 am


Ola!
gostaria de saber como eu adiciono um filtro para limitar o tamanho da imagem e verificar se é png,jpg etc...
Ja que o eregi não funciona no php 5?

Código: Selecionar todos
<?php
   session_start();
   require_once("restrito.php");
   require_once("config.php");
   conexao();
   
  if(isset($_GET['acao'])){
   if($_GET['acao'] =="enviar" ){
   
    $mala = $_SESSION['login2'];
   
   $descricao = $_POST['nome'];

   $nomeFoto = $_FILES['foto']['name'];
   
   $tmpFoto = $_FILES['foto']['tmp_name'];
   
   $destino = "fotos/".$nomeFoto;
   
       
   if(move_uploaded_file($tmpFoto, $destino)){
   
      $sql = "UPDATE cadastro SET desc_cadastro = '$descricao', img_cadastro = '$destino' WHERE id_cadastro = '$mala'";
     if($query = @mysql_query($sql, $base)or die("Erro ao enviar Imagem".mysql_error())){
       header("Location:perfil.php");
   }else{
       echo "Ocorreu um erro no Cadastro de Imagem";
   }
    }else{
       echo "Erro ao fazer upload da Foto ";
   }
   }
   }
?>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<form action="?acao=enviar" method="post" enctype="multipart/form-data">
<table width="200" border="0">
  <tr>
    <td><strong>NOME</strong></td>
    <td><input type="text" name="nome" /></td>
  </tr>
  <tr>
    <td><strong>FOTO</strong></td>
    <td><input type="file" name="foto" /></td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td><input name="" type="submit" value="Cadastrar" /></td>
  </tr>
</table>

</form>
<body>
</body>
</html>



detalhes...


antonio duplo x
ATIVO
ATIVO
Mensagens: 73
Registrado em: Dom Out 05, 2008 5:23 pm


Como adicionar um filtro?

Mensagem por web Offline » Qua Fev 08, 2012 9:00 am

Tem um script aqui no fórum chamado upload total, tem o filtro para formato de imagem e tamanho. Dá uma olhada

Upload-total_33_873.html

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12407
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

Como adicionar um filtro?

Mensagem por antonio duplo x Offline » Sex Fev 10, 2012 5:44 pm

Beleza! não é duvida porem refiz o codigo ,e funciona legal .
então se alguem quizer utilizar fique a vontade.

Código: Selecionar todos
<?php
     require_once("conexao.php");
     conexao();
     
    if(isset($_GET['up'])){
      $nome = $_POST['nome'];
      $foto = $_FILES['foto']['name'];
      $tmpfoto = $_FILES['foto']['tmp_name'];
      $tamfoto =$_FILES['foto']['size'];
      //pega o nome e a extensão do arquivo
      $tipo = explode(".", $_FILES['foto']['name']);
       //tamanho maximo da imagem,altura largura e coloca num array
       $tamanho = 1048576; $lar = 150;$alt =150;
       //pega os valores
       $dimensoes = getimagesize($tmpfoto);
    if(preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$foto, $tipo[1])){
      // Verifica se a tamanho da imagem é maior que a  permitida
     if($foto > $tamanho){
      $er[] = "Arquivo até 1MB";
     }
     // Verifica se a largura da imagem é maior que a largura permitida
     if($dimensoes[0] > $lar) {
     
      $er[] = " A largura da imagem não deve ultrapassar ".$lar." pixels";
    }
    // Verifica se a altura da imagem é maior que a altura permitida
    if($dimensoes[1] > $alt) {

      $er[] = " Altura da imagem não deve ultrapassar ".$alt." pixels";
      }
     $nome_imagem = $foto;
      // Caminho de onde ficara a imagem
     $destino = "fotos/".$nome_imagem;
     // Faz o upload da imagem para seu respectivo caminho
     if(move_uploaded_file($tmpfoto, $destino)){
      // Insere os dados no banco
      $sql = "INSERT INTO foto (nome_foto, img_foto) VALUES ('$nome','$nome_imagem')";
     if($query = @mysql_query($sql, $base)or die("Erro ao enviar Imagem".mysql_error())){
       header("Location:painel.php");
   }else{
       echo "Ocorreu um erro no Cadastro de Imagem";
   }
    }else{
       $er[] = "Ouve um erro ao enviar o arquivo";
    }
    } else{
      print 'errado';
    }
    }
?>

<HTML>
<HEAD>
<TITLE>New Document</TITLE>
</HEAD>
<BODY>
  <?php
    if(isset($er)){
       echo "<lu>";
       for($i=0;$i<count($er);$i++){
           echo "<li>".$er[$i]."</li>";
       }
       echo "</lu>";
    }
?>
<BR>
<form action="?up" method="POST" enctype="multipart/form-data">
<table  width="200">
<tr>
  <td>Nome</td>
  <td><input type="text" name="nome"></td>
</tr>
<tr>
  <td>&nbsp;</td>
  <td><input type="file" name="foto"></td>
</tr>
<tr>
  <td>&nbsp;</td>
  <td><input type="submit" value="Enviar"></td>
</tr>
</table>
</form>
</BODY>
</HTML>


detalhes...


antonio duplo x
ATIVO
ATIVO
Mensagens: 73
Registrado em: Dom Out 05, 2008 5:23 pm


Como adicionar um filtro?

Mensagem por web Offline » Sex Fev 10, 2012 5:59 pm

Boa. ;)

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12407
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil

Como adicionar um filtro?

Mensagem por antonio duplo x Offline » Sex Fev 10, 2012 8:18 pm

Ola desculpa estar recolocando o codigo mais faltava uma variavel e para quem for utilizar copie este

Código: Selecionar todos
<?php
         require_once("conexao.php");
         conexao();

        if(isset($_GET['up'])){
       
          $nome = $_POST['nome'];
          $foto = $_FILES['foto']['name'];
          $tmpfoto = $_FILES['foto']['tmp_name'];
          $tamfoto =$_FILES['foto']['size'];
          //pega o nome e a extensão do arquivo
          $tipo = explode(".", $_FILES['foto']['name']);
           //tamanho maximo da imagem,altura largura e coloca num array
           $tamanho = 1048576; $lar = 150;$alt =150;
           //pega os valores
           $dimensoes = getimagesize($tmpfoto);
        if(preg_match("/\.(gif|bmp|png|jpg|jpeg){1}$/i",$foto, $tipo[1])){
          // Verifica se a tamanho da imagem é maior que a  permitida
         if($tamfoto > $tamanho){
          $er[] = "Arquivo até 1MB";
         }
         // Verifica se a largura da imagem é maior que a largura permitida
         if($dimensoes[0] > $lar) {

          $er[] = " A largura da imagem não deve ultrapassar ".$lar." pixels";
        }
        // Verifica se a altura da imagem é maior que a altura permitida
        if($dimensoes[1] > $alt) {

          $er[] = " Altura da imagem não deve ultrapassar ".$alt." pixels";
          }
          if(!$er){
         $nome_imagem = $foto;
          // Caminho de onde ficara a imagem
         $destino = "fotos/".$nome_imagem;
         // Faz o upload da imagem para seu respectivo caminho
         if(move_uploaded_file($tmpfoto, $destino)){
          // Insere os dados no banco
          $sql = "INSERT INTO foto (nome_foto, img_foto) VALUES ('$nome','$nome_imagem')";
         if($query = @mysql_query($sql, $base)or die("Erro ao enviar Imagem".mysql_error())){
           header("Location:painel.php");
           
       }else{
           echo "Ocorreu um erro no Cadastro de Imagem";
       }
        }else{
           $er[] = "Ouve um erro ao enviar o arquivo";
        }
        }
        } else{
           $er[] = "Arquivo Invalido.";
            print'<BR>';
           $er[] = "Envie outro Arquivo .";
        }
        }
    ?>

    <HTML>
    <HEAD>
    <TITLE>New Document</TITLE>
    </HEAD>
    <BODY>
      <?php
        if(isset($er)){
           echo "<lu>";
           for($i=0;$i<count($er);$i++){
               echo "<li>".$er[$i]."</li>";
           }
           echo "</lu>";
        }
    ?>
    <BR>
    <form action="?up" method="POST" enctype="multipart/form-data">
    <table  width="200">
    <tr>
      <td>Nome</td>
      <td><input type="text" name="nome"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input type="file" name="foto"></td>
    </tr>
    <tr>
      <td>&nbsp;</td>
      <td><input type="submit" value="Enviar"></td>
    </tr>
    </table>
    </form>
    </BODY>
    </HTML>


detalhes...


antonio duplo x
ATIVO
ATIVO
Mensagens: 73
Registrado em: Dom Out 05, 2008 5:23 pm


Como adicionar um filtro?

Mensagem por web Offline » Sex Fev 10, 2012 9:01 pm

Vlw.

detalhes...

Gostou do que encontrou? Divulgue, indique, participe, agradeça pelas respostas.

Faço scripts personalizados ou reparos em scripts. Orçamento MSN codigosnaweb1 [@] gmail [.] com

Avatar do usuário
web
ADMIN
ADMIN
Mensagens: 12407
Registrado em: Sáb Jan 20, 2007 6:08 pm
Localização: RJ / RJ / Brasil


responder a dúvida

Voltar para PHP

Quem está online

Usuários navegando neste fórum: Alexa [Bot] e 3 visitantes