2013-04-24 46 views
0

我有一个注册页面jQuery的弹出用PHP表单验证

<form class="register" action="regist.php" method="post" > 
        <h3>Register</h3> 
        <div class="column"> 
         <div> 
          <label>First Name:</label> 
          <input type="text" name="f_name"/> 
          <span ></span> 
         </div> 
         <div> 
          <label>Last Name:</label> 
          <input type="text" name="l_name"/> 
          <span class="error">This is an error</span> 
         </div> 
         <div> 
          <label>mobile:</label> 
          <input type="text" name="mobile"/> 
          <span class="error">This is an error</span> 
         </div> 
        </div> 
        <div class="column"> 
         <div> 
          <label>Username:</label> 
          <input type="text"name="user"/> 
          <span >This is an error</span> 
         </div> 
         <div> 
          <label>Email:</label> 
          <input type="text" name="email"/> 
          <span class="error">This is an error</span> 
         </div> 
         <div> 
          <label>Password:</label> 
          <input type="password" name="pass"/> 
          <span class="error">This is an error</span> 
         </div> 
        </div> 
        <div class="bottom"> 
         <div class="remember"> 

         </div> 
         <input type="submit" value="Register" name="submet" /> 
         <a href="index.html" rel="login" class="linkform">You have an account already? Log in here</a> 
         <div class="clear"></div> 
        </div> 
       </form> 

使用jQuery的bpopup

$(function() { 

     // Binding a click event 
     // From jQuery v.1.7.0 use .on() instead of .bind() 
     $('#my-button').bind('click', function(e) { 

      // Prevents the default action to be triggered. 
      e.preventDefault(); 

      // Triggering bPopup when click event is fired 
      $('#element_to_pop_up').bPopup(); 

     }); 

    } 

所以当有人点击注册表单将罚款弹出的每一件事情的工作问题是,我不能验证的形式,因为当我点击注册后填写表格 弹出将消失,所以我不能做验证在同一表格

我试图 1使另一个弹出显示错误,但数据不会传递到新弹出 2做出行动$_SERVER['self_request'] 有人可以帮助我这个请我有我的大学项目我需要做它在3个dayes

我需要的是在同一个页面或之前另一个弹出窗体验证其发送到MySQL脚本

回答

0

做一个PHP页面(这里称为validation.php),它使用GET函数获取信息...

然后在输入字段上设置一些ID ...

然后作出这样的功能:

function checkAll(){ 
    var firstName = document.getElementById("f_name").value(); 
    var lastName = document.getElementById("l_name").value(); 
    $.get("validation.php?f_name=" + firstName + "&l_name=" + lastName, function(response) { 
     // console.log(response); // server response 
     response = response.trim(); 
     if(response == 1){ 
      alert("Everything is alright"); 
     } else{ 
      alert(response); 
      return false; 
     } 
    }); 
} 

,改变你的形式是:

<form class="register" action="regist.php" method="post" onSubmit="checkAll();"> 

现在的关键是,在validation.php,如果一切正常,那么你可以回声值1,并且当某些事情不好时,您会回显错误代码(或任何代码,然后使用switch子句可以动态地将错误添加到表单中)。

return false阻止表单提交...