2013-04-17 89 views
0

我的问题是这样的。我有这个阿贾克斯电话:

$.ajax({ 
       url: "./changepassword_ajax.php", 
       type: "POST", 
       data: formData, 
       processData: false, 
       contentType: false, 
       success: function (res) { 

       } 
     }); 

var formData有信息(这不是问题)。 在 “changepassword_ajax.php” 我有这样的代码:

$obj = new All(); 
$clave = $obj->CNF_get('admin_clave'); 

if($_POST('oldpassword') == $clave){ 
    $obj->CNF_set('admin_clave', $_POST('newpassword')); 
    echo "OK"; 
}else{ 

    echo "ERROR"; 
} 

这样做后:

if($_POST('oldpassword') == $clave){ 

AJAX调用返回。所以它没有达到其他代码。

感谢您的帮助。

回答

0

我认为你做了一个小错误而写代码 更换线 if($_POST('oldpassword') == $clave){if($_POST['oldpassword'] == $clave){

,并重新运行该代码

+0

非常感谢。如果您在凌晨3点编码,会发生这种情况,再次感谢。 – agnunez

1

一旦你ECHO东西有开始响应报头...... 但)你的PHP脚本不会停止,如果没有设定退出(或死亡(),并进入到最后..

一些建议我可以给你..

在你JQUERY加1个PARAM

数据类型: 'JSON',

而在你的PHP你有回声JSON编码responde(最好是数组)..

echo json_encode(array('state'=>"OK")); 
exit(); 

这样,你在你可以在响应jQuery的..

success: function (res) { 
    alert(res.state); 
} 
0

,请使用以下代码

$obj = new All(); 
$clave = $obj->CNF_get('admin_clave'); 

if($_POST['oldpassword'] == $clave){ 
    $obj->CNF_set('admin_clave', $_POST('newpassword')); 
    echo "OK"; 
    exit; 

}else{ 

    echo "ERROR"; 
    exit; 
} 

在ajax成功代码中提醒res

+0

@安德烈斯·努涅斯是这样为你工作? –

+0

我没有测试它。问题是$ _POST中的括号。 – agnunez