2011-10-07 87 views
0

我有一个脚本来检查通过MySQL数据库验证,我使用jQuery发布和回调结果,如果验证成功将重定向到另一个URL,否则会弹出提醒警报。php jQuery的条件警报或重定向

function chkValid(){ 
$.post('check_validate.php', $("#form").serialize(), function(data) { 

    // if invalid, pop up alert 
    alert(data); 

    // if valid, redirect 
    window.location("url"); 

}); 

是否可以通过上面的脚本完成?

谢谢。 }

回答

0

你必须得到在服务器端处理的“check_validate.php”返回给你的东西。

你的 “check_validate.php” 必须呼应的消息...例如

<?php 
//check_validate.php 
if($_POST["req"]=="iamnew"){ 
     echo "welcome"; 
} 
else{ 
echo "unwelcome"; 
} 
?> 

,让jQuery的过程中你check_validate.php

$.post('check_validate.php',{ req: "iamnew" }, $("#form").serialize(), function(data) { 
    if(data=="unwelcome"){ 
    alert(data); 
} 
else if(data=="welcome"){ 
    window.location("url"); 
} 
}); 
+0

“data”变量保存你的“check_validate.php”的响应,所以你可以使用它来进行身份验证n或你正在处理的东西=) –

+0

非常感谢Mahan,它的作品非常棒! – conmen

+0

http://api.jquery.com/jQuery.post/ ...只需看看这个=) –

0
function chkValid(){ 
    $.post('check_validate.php', $("#form").serialize(), function(data) { 
     if(data!='valid') { 
      // if invalid, pop up alert 
      alert(data); 
     } 
     else { 
      // if valid, redirect 
      window.location.href("http://www.example.url"); 
     } 
    }); 
} 

化妆的回波串确保你必须回显一个字符串来表明数据在php代码中是有效的还是无效的。

echo 'valid'; 

echo 'invalid'; 
在check_validate.php

0

您可以发送一个标志作为响应Ajax请求..比如发送 “1”,如果成功运作和 “0” 操作无效

function chkValid(){ 
$.post('check_validate.php', $("#form").serialize(), function(data) { 

if(datat=="0") // if invalid, pop up alert 
{ alert(data); 
} 
else 
{ 
// if valid, redirect 
window.location("url"); 
} 

});