lucke Postado Outubro 3, 2013 Denunciar Share Postado Outubro 3, 2013 Fala galera.. to precisando de uma ajudinha aqui. A questão é a seguinte: Tenho um formulário de cadastro; Esse formulário é validado por um JS; No JS, é que tem a "junção" de php com js..A como posso explicar..O JS é que envia os dados para o PHP. Acho que pode ser um erro besta, mas resolvi postar aqui a dúvida.Vejam: Formulário: <h3>Formulário</h3> <form id="cad" method=POST action="?page=cadastro&ac=cad"> <div class="success"> Cadastro efetuado! <strong>Por favor, abra seu email e confirme sua conta.</strong> </div> <fieldset> <div> Nome completo:<label class="name"> <input type="text" name="name" value="Seu nome e sobrenome"> <br> <span class="error">*Nome inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Senha<label class="nome"> <input type="password" name="senha" value=""> <br> <span class="error">*Senha inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Email:<label class="email"> <input type="email" name="email" value="Email:"> <br> <span class="error">*Email inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Telefone(DDD+TEL):<label class="phone"> <input type="tel" name="telefone" value="Telefone:"> <br> <span class="error">*Telefone inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Endereço<label class="nome"> <input type="email" name="endereco" value="Endereço completo"> <br> <span class="error">*Endereço inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Bairro<label class="nome"> <input type="email" name="bairro" value="Bairro"> <br> <span class="error">*Bairro inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Número( + complemento caso tenha):<label class="phone"> <input type="email" name="numero" value="Numero da casa"> <br> <span class="error">*Numero inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> Cep:<label class="phone"> <input type="email" name="cep" value="Cep"> <br> <span class="error">*Cep inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> CPF:<label class="phone"> <input type="email" name="cpf" value="CPF"> <br> <span class="error">*CPF inválido.</span> <span class="empty">*Campo obrigatório.</span> </label> </div> <div> <input type=checkbox name=termos><b><font color=white>Li e concordos com os termos</font><BR></b><b><font color=red>Atenção: leia os termos ao lado e clique na caixinha acima</font> </b> <div class="buttons-wrapper"><a class="button" data-type="submit">Cadastrar-me!</a></div> </fieldset> </form> Arquivo JS: //forms ;(function($){ $.fn.forms=function(o){ return this.each(function(){ var th=$(this) ,_=th.data('forms')||{ errorCl:'error', emptyCl:'empty', invalidCl:'invalid', notRequiredCl:'notRequired', successCl:'success', successShow:'4000', mailHandlerURL:'bat/cad.php', ownerEmail:'support@template-help.com', stripHTML:true, smtpMailServer:'localhost', targets:'input,textarea', controls:'a[data-type=reset],a[data-type=submit]', validate:true, rx:{ ".name":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'}, ".state":{rx:/^[a-zA-Z'][a-zA-Z-' ]+[a-zA-Z']?$/,target:'input'}, ".email":{rx:/^(("[\w-\s]+")|([\w-]+(?:\.[\w-]+)*)|("[\w-\s]+")([\w-]+(?:\.[\w-]+)*))(@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$)|(@\[?((25[0-5]\.|2[0-4][0-9]\.|1[0-9]{2}\.|[0-9]{1,2}\.))((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\.){2}(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[0-9]{1,2})\]?$)/i,target:'input'}, ".phone":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'}, ".fax":{rx:/^\+?(\d[\d\-\+\(\) ]{5,}\d$)/,target:'input'}, ".message":{rx:/.{20}/,target:'textarea'} }, preFu:function(){ _.labels.each(function(){ var label=$(this), inp=$(_.targets,this), defVal=inp.val(), trueVal=(function(){ var tmp=inp.is('input')?(tmp=label.html().match(/value=['"](.+?)['"].+/),!!tmp&&!!tmp[1]&&tmp[1]):inp.html() return defVal==''?defVal:tmp })() trueVal!=defVal &&inp.val(defVal=trueVal||defVal) label.data({defVal:defVal}) inp .bind('focus',function(){ inp.val()==defVal &&(inp.val(''),_.hideEmptyFu(label),label.removeClass(_.invalidCl)) }) .bind('blur',function(){ _.validateFu(label) if(_.isEmpty(label)) inp.val(defVal) ,_.hideErrorFu(label.removeClass(_.invalidCl)) }) .bind('keyup',function(){ label.hasClass(_.invalidCl) &&_.validateFu(label) }) label.find('.'+_.errorCl+',.'+_.emptyCl).css({display:'block'}).hide() }) _.success=$('.'+_.successCl,_.form).hide() }, isRequired:function(el){ return !el.hasClass(_.notRequiredCl) }, isValid:function(el){ var ret=true $.each(_.rx,function(k,d){ if(el.is(k)) ret=d.rx.test(el.find(d.target).val()) }) return ret }, isEmpty:function(el){ var tmp return (tmp=el.find(_.targets).val())==''||tmp==el.data('defVal') }, validateFu:function(el){ el.each(function(){ var th=$(this) ,req=_.isRequired(th) ,empty=_.isEmpty(th) ,valid=_.isValid(th) if(empty&&req) _.showEmptyFu(th.addClass(_.invalidCl)) else _.hideEmptyFu(th.removeClass(_.invalidCl)) if(!empty) if(valid) _.hideErrorFu(th.removeClass(_.invalidCl)) else _.showErrorFu(th.addClass(_.invalidCl)) }) }, getValFromLabel:function(label){ var val=$('input,textarea',label).val() ,defVal=label.data('defVal') return label.length?val==defVal?'nope':val:'nope' } ,submitFu:function(){ _.validateFu(_.labels) if(!_.form.has('.'+_.invalidCl).length) $.ajax({ type: "POST", url:_.mailHandlerURL, data:{ nome:_.getValFromLabel($('.name',_.form)), email:_.getValFromLabel($('.email',_.form)), phone:_.getValFromLabel($('.phone',_.form)), fax:_.getValFromLabel($('.fax',_.form)), state:_.getValFromLabel($('.state',_.form)), message:_.getValFromLabel($('.message',_.form)), owner_email:_.ownerEmail, stripHTML:_.stripHTML }, success: function(){ _.showFu() } }) }, showFu:function(){ _.success.slideDown(function(){ setTimeout(function(){ _.success.slideUp() _.form.trigger('reset') },_.successShow) }) }, controlsFu:function(){ $(_.controls,_.form).each(function(){ var th=$(this) th .bind('click',function(){ _.form.trigger(th.data('type')) return false }) }) }, showErrorFu:function(label){ label.find('.'+_.errorCl).slideDown() }, hideErrorFu:function(label){ label.find('.'+_.errorCl).slideUp() }, showEmptyFu:function(label){ label.find('.'+_.emptyCl).slideDown() _.hideErrorFu(label) }, hideEmptyFu:function(label){ label.find('.'+_.emptyCl).slideUp() }, init:function(){ _.form=_.me _.labels=$('label',_.form) _.preFu() _.controlsFu() _.form .bind('submit',function(){ if(_.validate) _.submitFu() else _.form[0].submit() return false }) .bind('reset',function(){ _.labels.removeClass(_.invalidCl) _.labels.each(function(){ var th=$(this) _.hideErrorFu(th) _.hideEmptyFu(th) }) }) _.form.trigger('reset') } } _.me||_.init(_.me=th.data({forms:_})) typeof o=='object' &&$.extend(_,o) }) } })(jQuery) $(window).load(function(){ $('#cad').forms({ ownerEmail:'#' }) }) Arquivo php (cad.php)(OBS: Aqui a citação ta sem o $sql, mas aqui no meu código tem o $sql): <?php $nome = $_POST['nome']; $senha = $_POST['senha']; $email = $_POST['email']; $telefone = $_POST['telefone']; $endereco = $_POST['endereco']; $bairro = $_POST['bairro']; $numero = $_POST['numero']; $cep = $_POST['cep']; $cpf = $_POST['cpf']; $termos = $_POST['termos']; try{ if($sql){ throw new Exception('mail failed'); }else{ echo 'mail sent'; } }catch(Exception $e){ echo $e->getMessage() ."\n"; } ?> Lembrando que peguei esse js e tentei adaptar, por que ele é usado na verdade para validar um form de contato. Ajuda please! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
lucke
Fala galera.. to precisando de uma ajudinha aqui.
A questão é a seguinte:
Tenho um formulário de cadastro;
Esse formulário é validado por um JS;
No JS, é que tem a "junção" de php com js..A como posso explicar..O JS é que envia os dados para o PHP.
Acho que pode ser um erro besta, mas resolvi postar aqui a dúvida.Vejam:
Formulário:
Arquivo JS:
Arquivo php (cad.php)(OBS: Aqui a citação ta sem o $sql, mas aqui no meu código tem o $sql):
Lembrando que peguei esse js e tentei adaptar, por que ele é usado na verdade para validar um form de contato.
Ajuda please!
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.