Ir para conteúdo

POWERED BY:

Arquivado

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

Gabriel T.

Plugin jQuery Validate: 2 remotes...

Recommended Posts

Olá pessoal, estou precisando da ajuda de vocês novamente.

Quero validar somente um campo com o plugin jQuery Validate, e com AJAX, irei resgatar uma função de um arquivo PHP e verificar alguns dados:

Senha já utilizada, ou senha não existente.

Com essa senha o usuário terá acesso à uma página restrita, e essa página será o formulário de cadastro de usuários.

Já consegui incluir um CAPTCHA em meu formulário de contato, e para verificar se o código está correto ou o campo em branco, eu utilizo essa parte do código inteiro nas tags <HEAD>:

 

$(document).ready(function() {

$("#contato").validate({
rules: {
	captcha: {
	required: true,
	remote: "captcha/process.php"
	}
},
messages: {
	required: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000; background-color:#fff;\">Preencha o campo acima.</em>",
	remote: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000; background-color:#fff;\">Código inválido.</em>"
},
...
...

 

Mas tenho uma dúvida:

É possível incluir 2 'remotes' no script ou eu tenho que criar as 2 funções no documento PHP e verificar cada uma?

Atualmente meu script está assim:

 

<script type="text/javascript">
$(document).ready(function(){
 $("#senhaacesso").validate({
   rules: {
  senhaacessoo: {
    required: true,
	remote: "senhaacesso/verificar.php"
	}
   },
messages: {
    required: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000;\">Preencha o campo acima.</em>",
    remote: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000;\">Senha de Acesso inexistente.</em>"
   },
 });
});
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Teoricamente, acredito que não há nenhum problema, basta adicionar mais uma regra remote para o campo desejado na mesma função de validação que deve funcionar...

Compartilhar este post


Link para o post
Compartilhar em outros sites
basta adicionar mais uma regra remote para o campo desejado na mesma função de validação que deve funcionar...

 

Obrigado amigo, essa era a minha questão.

Mas como irei colocar duas mensagens para cada tipo de 'remote?'

O PHP realizará três buscas na tabela do nome "senhas", e ele irá verificar se essa senha está válida, se foi bloqueada ou se não existe.

A busca 'não existe' poderá ser feita com else mesmo, não é?

Obrigado pela sua resposta.

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

Mais ou menos assim:

$("#contato").validate({
rules: {
captcha: {
required: true,
remote: "captcha/process.php"
},
senha {
remote: 'verifica_senha.php',
required: true
}
},
messages: {
required: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000; background-color:#fff;\">Preencha o campo acima.</em>",
captcha: "<img style=\"margin-right:5px; margin-top: 2px;\" src=\"images/error.png\"/><em style=\"color:#FF0000; background-color:#fff;\">Código inválido.</em>"
senha: 'Senha inválida!'
},
//...

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, obrigado pela sua resposta, mas não era exatamente isso que queria...

Quero validar somente 1 campo, o id e nome do campo é 'senhaboleto'.

Com o PHP eu faria uma busca no banco de dados para ver se a senha incluída no campo está válida, se foi bloqueada e se essa senha existe, e então se existir essa senha e se estiver válida, redireciona à uma página restrita.

Entende?

Mais uma vez obrigado amigo.

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É exatamente o que deveria estar ocorrendo...

Se você ter um

echo 'true';

no PHP, a validação ocorrerá sem problemas e o form será enviado.

 

Mas como irei colocar duas mensagens para cada tipo de 'remote?'

Você pode adicionar uma mensagem específica para cada campo, não só para o tipo de campo...

messages: {
nome: 'Por favor, informe o seu nome!',
senha: 'Por favor, informe uma senha'
//...
}

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.