Filtro para permitir números ou letras, em Php bem simples e prático

Filtro para números ou não, filtra determinado valor, seja frase, palavra ou letra e exibe se é permitido.
Fiz três exemplos, os dois primeiros são simples, idênticos, apenas com um valor de 'entrada' diferente, o terceiro é mais incrementado.
Aviso sobre segurança - Tratando de números, nos códigos abaixo, os valores numéricos dentro do array devem estar entre aspa simples, principalmente se eles serão inseridos pelos usuários(clientes), ou irá permitir outros valores, no código de exemplo abaixo, um valor como 27 ou 2blabla passariam como permitidos.

Código de exemplo, problemático

Vamos lembrar que, esse código abaixo funciona, mas a função principal, que seria impedir outros números de passar não funciona, os números 2, 4 e 6 são permitidos(passam), e, valores iguais ou começados com 0,1,3,5,7,8,9 são impedidos(não passam), mas, alguns dados começados com 2,4, e 6 são permitidos(queria que fossem impedidos), seria permitido por exemplo: 2=013, 4,56, 4elementos, 2 Homens e Meio... <?php
//6 2 será valor a ser filtrado, poderia vir via GET ou POST, mas, varias entradas além dos valores....
$ValorRecebido = '6 2';
//valores passáveis entre parentes
$ValorPermitido = array(2, 4, 6, abacaxi);

if(in_array($ValorRecebido, $ValorPermitido))

//Se valores permitidos ai
{
$ValorFinal=$ValorRecebido.' passou';
}
//Se valores não permitidos
else
{$ValorFinal='nenhum valor válido';};

echo $ValorFinal;
// Exibi o resultado: 6 2 passou
?>

Código de exemplo 1, simples

<?php
//34 será valor a ser filtrado, poderia vir via GET ou POST
$ValorRecebido = '34';
//valores passáveis entre parentes
$ValorPermitido = array('2', '4', '6', abacaxi);

if(in_array($ValorRecebido, $ValorPermitido))

//Se valores permitidos ai
{
$ValorFinal=$ValorRecebido;
}
//Se valores não permitidos
else
{$ValorFinal='nenhum valor válido';};

echo $ValorFinal;
// Exibi o resultado: nenhum valor válido
?>


Se, no início do código eu tivesse usado $ValorRecebido = '4'; o que seria exibido seria apenas o número 4 que é um valor permitido, como no exemplo abaixo onde usei um valor permitido, não número, mas é permitido.

Código de exemplo 2, simples

Neste código apenas tem um valor que será aceito

<?php
//valor a ser filtrado será abacaxi
$ValorRecebido = 'abacaxi';
//valores passáveis entre parentes
$ValorPermitido = array('2', '4', '6', abacaxi);

if(in_array($ValorRecebido, $ValorPermitido))

//Se valores permitidos ai
{
$ValorFinal=$ValorRecebido;
}
//Se valores não permitidos
else
{$ValorFinal='nenhum valor válido';};

echo $ValorFinal;
// Exibi o resultado: abacaxi
?>

Código de exemplo 3

Esse é um pouco mais incrementado, fica mais complicado, mas dá mais possibilidades e permite que você possa entender um pouco mais o funcionamento do script, ele pode mostrar uma mensagem avisando que valor ou palavra é válida ou inválida

<?php
//valor a ser filtrado será laranja
$ValorRecebido = 'laranja';
//valores passáveis entre parentes
$ValorPermitido = array('2', '4', '6', abacaxi);

if(in_array($ValorRecebido, $ValorPermitido))

//Se valores permitidos ai
{
$ValorFinal='Parabéns, o valor "'.$ValorRecebido.'" é Válido';
}
//Se valores não permitidos
else
{$ValorFinal='Sinto muito, o valor "'.$ValorRecebido.'" é inválido';};

echo $ValorFinal;
// Exibi o resultado: Sinto muito, o valor "laranja" é inválido
?>

Sem comentários:

Enviar um comentário