Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tulioricardo

Validacao

Recommended Posts

OI Pessoal tudo bem?

 

Seguinte estou montando um script com upload de imagens e agora gostaria de valida-lo, porém não estou acertando com o IF não sei o que fiz de errado pois fiquei muito tempo sem programar php e agora estou voltando. Se puderem me ajudar eu agradeço.

 

grava.php

 

PHP

[*]<?

[*]include "config.php";

[*]

[*]$nome = $_POST['nome'];

[*]$email = $_POST['email'];

[*]$telefone = $_POST['telefone'];

[*]$icq = $_POST['icq'];

[*]$msn = $_POST['msn'];

[*]$marca = $_POST['marca'];

[*]$modelo = $_POST['modelo'];

[*]$ano = $_POST['ano'];

[*]$preco = $_POST['preco'];

[*]$uf = $_POST['uf'];

[*]$anuncio = $_POST['anuncio'];

[*]

[*]$arquivo = $_FILES['arquivo']['tmp_name'];

[*]$config = array();

[*]// Tamano máximo da imagem, em bytes

[*]$config["tamanho"] = 106883;

[*]// Largura Máxima, em pixels

[*]$config["largura"] = 400;

[*]// Altura Máxima, em pixels

[*]$config["altura"] = 300;

[*]if($arquivo["size"] > $config["tamanho"])

[*] {

[*] $erro[] = "Arquivo em tamanho muito grande! A imagem deve ser de no máximo " . $config["tamanho"] . " bytes. Envie outro arquivo";

[*] }

[*]

[*] // Para verificar as dimensões da imagem

[*] $tamanhos = getimagesize($arquivo["tmp_name"]);

[*]

[*] // Verifica largura

[*] if($tamanhos[0] > $config["largura"])

[*] {

[*] $erro[] = "Largura da imagem não deve ultrapassar " . $config["largura"] . " pixels";

[*] }

[*]

[*] // Verifica altura

[*] if($tamanhos[1] > $config["altura"])

[*] {

[*] $erro[] = "Altura da imagem não deve ultrapassar " . $config["altura"] . " pixels";

[*] }

[*]

[*]$dest = $local."fotos/".$_FILES['arquivo']['name'];

[*]// Faz o upload da imagem

[*]move_uploaded_file($arquivo, $dest);

[*]mysql_query("INSERT INTO dados(nome, email, telefone, icq, msn, marca, modelo, ano, preco, uf, anuncio, foto)VALUES('$nome', '$email','$telefone', '$icq', '$msn', '$marca', '$modelo', '$ano', '$preco', '$uf', '$anuncio', '$dest')");

[*]

[*]?>

 

Obrigado pessoal!

Compartilhar este post


Link para o post
Compartilhar em outros sites

ei, krinha... tenho um jeito melhor pra validar o tamanho de sua imagem, veja:

 

PHP

[*]

[*]if (preg_match("/(jpeg|jpg)/i", $_FILES['arquivo']["type"], $r))

[*] {

[*] #as imagens devem ter o tamanho de 600x600. se o tamanho nao corresponder, gera msg de erro.

[*] $img = imagecreatefromjpeg($_FILES['arquivo']['tmp_name']);

[*] if((imagesx($img) <> 600) || (imagesy($img) <> 600))

[*] {

[*] imagedestroy($img);

[*] print 'A imagem não corresponde ao tamanho requisitado.';

[*] die();

[*] } else {

[*] imagedestroy($img);

[*] } 

[*] }

[*]

 

de quebra ainda testa se a imagem é mesmo jpg ou não... você pode colocar vários formatos nesse preg_match, eu só coloquei jpg...

 

se não entender dá um toque ae.... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Opa, Primeiramente obrigado pela resposta Thompson, seguinte cara eu coloquei da seguinte forma e estou tentando upar uma imagem menor mas não ta dando certo, ao meu ver esta correto o codigo não esta do if? o Tamanho que quero permitir é de até 400x300 pode ser menor do que isso , maior não entendeu?

 

PHP

[*]

[*]<?

[*]include "config.php";

[*]

[*]$nome = $_POST['nome'];

[*]$email = $_POST['email'];

[*]$telefone = $_POST['telefone'];

[*]$icq = $_POST['icq'];

[*]$msn = $_POST['msn'];

[*]$marca = $_POST['marca'];

[*]$modelo = $_POST['modelo'];

[*]$ano = $_POST['ano'];

[*]$preco = $_POST['preco'];

[*]$uf = $_POST['uf'];

[*]$anuncio = $_POST['anuncio'];

[*]

[*]$arquivo = $_FILES['arquivo']['tmp_name'];

[*]

[*]if (preg_match("/(jpeg|jpg)/i", $_FILES['arquivo']["type"], $r)) 

[*] { 

[*] #as imagens devem ter o tamanho de 600x600. se o tamanho nao corresponder, gera msg de erro. 

[*] $img = imagecreatefromjpeg($_FILES['arquivo']['tmp_name'])

[*] if((imagesx($img) <> 400) || (imagesy($img) <> 300)) 

[*] { 

[*] imagedestroy($img)

[*] print 'A imagem não corresponde ao tamanho requisitado.'; 

[*] die()

[*] } else { 

[*]$dest = $local."fotos/".$_FILES['arquivo']['name'];

[*]// Faz o upload da imagem

[*]move_uploaded_file($arquivo, $dest);

[*]mysql_query("INSERT INTO dados(nome, email, telefone, icq, msn, marca, modelo, ano, preco, uf, anuncio, foto)VALUES('$nome', '$email','$telefone', '$icq', '$msn', '$marca', '$modelo', '$ano', '$preco', '$uf', '$anuncio', '$dest')");

[*]

[*] }

[*] }

[*]

[*]

[*]?>

 

Obrigado cara!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.