Passei pela documentação do JInput .
Podemos acessar o objeto JInput assim:
JFactory::getApplication()->input;
Se estamos recuperando mais valores, seria útil armazenar o objeto JInput em uma variável, para que não precisemos chamar JFactory::getApplication()
toda vez que fizermos isso:
$jinput = JFactory::getApplication()->input;
Para recuperar um valor do JInput, precisamos usar o método get:
$data = $jinput->get('varname', 'default_value', 'filter');
Como você pode ver, ele possui 3 parâmetros:
- o nome da variável
- o valor padrão (o padrão é nulo)
- o nome do filtro (o padrão é cmd)
E aqui vem a minha pergunta sobre o terceiro parâmetro.
Como posso criar meu próprio filtro Jinput
? Por exemplo, se eu tiver que validar números de telefone ou endereço IP, como posso fazer meu próprio filtro para isso?
joomla-3.x
jinput
Joomler
fonte
fonte
Respostas:
isso é bem simples
Primeiro, crie uma classe Jinput personalizada, como
class JinputTelephone
// o que você quiser.talvez, dê uma olhada nas classes de filtro de entrada existentes em / libraries / joomla / input
// Modifique o getter e filterMethod como desejar
// uso
// com esse método, você também pode usar a manipulação regular de entrada // Mas você não pode usá-lo com JApplication uma entrada
Existem muitas outras maneiras de fazer isso. Outra solução $ data = MyFilter :: SanitizeNumber ($ jinput-> get ('varname', 'default_value', 'raw'));
isso ajuda você?
fonte
Minha tentativa
Eu vejo que você tem alguma experiência com o Joomla, então apenas colocarei meus poucos centavos nele.
JLoader
se não estiver errado e adicionar caminho às bibliotecas, aka/plugins/system/myplugin/libraries/newfilter.php
PS. você pode criar dessa maneira um override também as bibliotecas e plataformas principais do joomla. Um problema SSL tão curl com certs; )
Saudações
fonte