Jump to content
tiko165

Form Validation

Recommended Posts

tiko165

Estou a usar um sistema de validação de forms, e neste momento não estou a conseguir adequar para alteração de password.

Estou a fazer o sistema de alteração de password (Antiga password, nova password, repetir password), e para a antiga password não consigo colocar a verificar com a BD ou então com uma função de encriptação (Que lê o mesmo da BD).

O sistema neste caso é este: http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/

A duvida é mesmo como verificar a password da BD com o do campo input, e senão for igual, dar a tal mensagem de erro.


collectioneuro300px.png

Share this post


Link to post
Share on other sites
I-NOZex

usa uma validação ajax

chama um ficheiro php que vá testar o input com a base de dados

se nao for isso, explica melhor, foi o que eu percebi...


B2R » Beat2Revolution v3.0b | Regista e divulga-nos

beat2revolution.net

Share this post


Link to post
Share on other sites
Devexz

assim muito rapidamente tens lá uma coisa que diz ajax[selector]

Possivelmente terás de usar isso para fazer um ajax call e verificar o campo com o retorno do script que php chamar.

  • Vote 1

Contador de calorias: caloriaspordia.com

Share this post


Link to post
Share on other sites
taviroquai

Experimenta este plugin jQuery para enviar os dados e receber a validação do servidor por ajax (validação apenas no servidor).

https://github.com/taviroquai/FormAssist

Tens aqui um exemplo de uso.

Incluis jQuery e o plugin formassist.js

Configuras no formulário HTML onde queres que apareçam as mensagens de erro.

Adicionas javascript para iniciar o plugin.

Depois no servidor, antes de guardares o formulário verifiques se o valor de cada campo é válido e devolves JSON. Por exemplo:


// para devolver erro
{"result":0,"type":"has-error","msg":"Email cannot be empty"}

// para devolver sucesso
{"result":1,"type":"has-success","msg":"OK!"}

Share this post


Link to post
Share on other sites
tiko165

Coloquei assim em Javascript

(function($){
  $.fn.validationEngineLanguage = function(){};
  $.validationEngineLanguage = {
	 newLang: function(){
		$.validationEngineLanguage.allRules = {
		   "ajaxUserCallPhp": {
		   "url": "ajaxValidateFieldUser.php",
		   // you may want to pass extra data on the ajax call
		   "extraData": "name=eric",
		   // if you provide an "alertTextOk", it will show as a green prompt when the field validates
		   "alertTextOk": "* Este nome de utilizador está disponível",
		   "alertText": "* Este nome de utilizador já está sendo utilizado",
		   "alertTextLoad": "* A validar, por favor aguarde"
		}
	 };
  }
  };   $.validationEngineLanguage.newLang();
})(jQuery);

E assim em PHP/HTML

<form id="form" action="register.php" method="post" accept-charset="utf-8">
<p>Username:</p>
<input name="username" class="validate[ajax[ajaxUserCallPhp]] text-input" type="text" />
</form>

E gostava como fazer para colocar o ficheiro "ajaxValidateFieldUser.php" a ler a BD e a dar os mesmos erros conforme a BD do username


collectioneuro300px.png

Share this post


Link to post
Share on other sites
I-NOZex

"extraData": "name=eric"

esse campo nao ta a toa, sao os parametros para passar por get, provavelmente será o username e a password, do genero

uname=Chico&pword=qwerty123

(usa o urlencode)

depois no ajaxValidateFieldUser.php, fazes uma ligação a base de dados, obtens os dados do post ($_GET['uname'] e $_GET['pword']), fazes urldecode, a password enviada no post, metes encriptada segundo a forma que ta na db (md5, ou md5+salt, ou qual a tecnica q tenhas usado), e comparas essa com a da base de dados


B2R » Beat2Revolution v3.0b | Regista e divulga-nos

beat2revolution.net

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.