Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS

Moderador: web

 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

09-10-2008 19:46

Olá galera, olha eu dinovo, vou ficar expert de tanto perguntar aqui no fórum, hehehehehe, tipow, o grilo agora é o seguinte, to tentando usar a funcao "exif_imagetype" para realmente fazer uma validação mais profunda antes de upar para o servidor, vejam só meu codigo:

$ifoto = $_FILES['foto']; if(!empty($ifoto)) { if($ifoto['size'] < 81920) { $tipo_imagem = eregi("^image\/(pjpeg|jpeg|x-png)$", $ifoto['type']); if($tipo_imagem) { if (exif_imagetype($ifoto['name']) == IMAGETYPE_PNG) { echo "A foto é menor que 80kb <br />"; echo "Ela passou pelo exif_imagetype <br />"; echo "Tipo de imagem: " . $ifoto['type']; } else { echo "Mime-Type inválido, não passa a perna rapaz."; } } else { echo "Imagem com extensão inválida"; } } else { echo "A foto é maior que 80kb"; } }

so que qd tento executar o script, aparece este erro:

Fatal error: Call to undefined function exif_imagetype() in C:\wamp\www\projetos\locsist\administracao\controle\acoes.php on line 98

e na linha 98, tem este comando:

if (exif_imagetype($ifoto['name']) == IMAGETYPE_PNG) { ... }

vlw galera, conto com vcs...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

09-10-2008 20:08

A sintaxe parece estar correta, o que você pode estar fazendo é verificar se a função é aceita no servidor

<?php if(function_exists('exif_imagetype')) { echo "existe"; } else { echo "não existe"; } ?>

0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

09-10-2008 20:19

web, falou tudo, realmente não existe, e agora o q devo fazer? trocar por getimagesize?
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

09-10-2008 20:33

Verificando o formato da imagem pelo $ifoto['type'] já dá uma boa segurança.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

09-10-2008 20:47

sim, mais por exemplo, o mime é uma segurança, mais nao tao boa, pq se vc pegar um arquivo de extensao ".exe" e renomear ela para ".jpg" o mime valida ela como uma imagem normal e ela nao ira perder seu mime original que é de "application/...", depois o mal feitor faz apenas um execute com o link da imagem, e ela se transforma novamente em ".exe", depois faça um teste pra vc ver, por isso estou fazendo uma validação mais segura, tpw, assim vc axa q ta bom? tenta burlar esse script pra ver se consegui ai tu me diz....

if(!empty($ifoto)) { if($ifoto['size'] < 81920) { $tipo_imagem = eregi("^image\/(pjpeg|jpeg|x-png)$", $ifoto['type']); if($tipo_imagem) { list(,,$type) = getimagesize($ifoto['tmp_name']); if ($type = $tipo_imagem) { echo "A foto é menor que 80kb <br />"; echo "Ela passou pelo exif_imagetype <br />"; echo "Tipo de imagem: " . $ifoto['type']; } else { echo "Mime-Type inválido, não passa a perna rapaz."; } } else { echo "Imagem com extensão inválida"; } } else { echo "A foto é maior que 80kb"; $erro = 'sim'; } }

eu só fikei com uma duvida q é nessa linha:

--> if ($type = $tipo_imagem) <--

vc axa melhor eu fazer como esta ou mudar para:

--> if(!empty($type)) { ... } <--

vlw brigadao web... abçs...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

09-10-2008 21:45

Tive observando aqui, seu servidor parece ser php4 ainda, porque a validação da foto deveria ser pelo $_FILES, ex

$_FILES['ifoto']['name']

Quanto ao teste, fiz aqui, notei que quando eu rodo um jpg, consigo usar o getimagesize para pegar o tamanho da foto

$tamanho = getimagesize($_FILES['ifoto']['tmp_name']);

Mas, quando pelo um exe e renomeio, não vem tamanho, ou seja, o getimagesize é um bom aliado nesse caso.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

09-10-2008 23:11

sim Web, pq tpw, se for um .exe o getimagesize não consegui ler o tamanho em bit dele, coisa assim, ai axo q ficou bom... coloca ai como script de validacao de upload de arquivos....

em relacao ao php, eu costumo não colocar o nome em uma variavel, pq eu uso assim na variavel:

$foto = $_FILES['foto']; <-- pego o campo da foto

ai eu vou trabalhando assim $foto['name'], ou $foto['size'] etc.... agora vc kis dizer que teria q ser validado tudo assim neh:

$foto['name']['size'], ou $foto['name']['type'] ??

Uma duvida web, em relacao a funcao "eregi", o modo de usar ela seria:

$eregi = eregi("string", $variavel);

eu copiei de um exemplo essa linha minha, ai notei que tem um "^" no começo e um "$" no final, pq isso? vlwww abçs...
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

09-10-2008 23:23

Geralmente o eregi é usado assim

if (eregi('string', $varivavel)) {
...
}

Quanto aos caracteres, é porque o eregi trabalha com expressão regular

Agora, parece que o ^ é usado antes da string para definir se a string estaria no começo da variável, tipo

$string = "abc";

if (eregi('^a', $string)) {
echo "tem a no início da string";
}

O sifrão ( $ ) já não sei
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

16-10-2008 16:36

entendi, vou procurar saber melhor sobre esta função "eregi" e as expressoes regular, tens algum link que mostra mais detalhes sobre expressoes regulares web? vlw brigadao..
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

16-10-2008 16:38

Sim, procura na busca Google sobre: expressão regular
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:
 
Mais de 75 postagens
Mais de 75 postagens
Tópico Autor
Mensagens: 90
Sexo: Masculino
Localização: MG/Uberaba/Brasil
Contato:

exif_imagetype não da certo

16-10-2008 16:54

procura no google ja procurei neh, aparece 3 mil resultados pra mais, mais nenhum é claro....
0
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17240
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

exif_imagetype não da certo

16-10-2008 17:00

http://www.google.com.br/cse?cx=partner ... =Pesquisar

No caso você tem que saber o que precisa fazer com expressão regular e como funciona, acessa o link acima, se não encontrar o que procura, só abrir um novo post sobre o que precisa fazer com expressão regular.
0
Criar site grátis Wix
Hospedagem de sites Hostgator
Tem um script legal em HTML, CSS, PHP, HTML, JavaScript, jQuery? Poste e compartilhe com os usuários do fórum
:rock:

Quem está online

Usuários navegando neste fórum: Bing [Bot]