繁体   English   中英

jQuery $ .post()数据返回错误

[英]Jquery $.post() data is returning incorrectly

我第一次运行$.post()时,女巫返回正确的数据json数据以运行if语句,但是下一次使用$.post() ,它返回错误,导致if语句无法按预期工作。

我当前的Jquery代码:

$.post('functions/write_settings.php', { dbname: $('#dbname').val(), dbhost: $('#dbhost').val(), dbpassword: $('#dbpassword').val(), dbusername: $('#dbusername').val(), dbprefix: $('#dbprefix').val() }, function(data){
    alert("here");
    try{var returndata = $.parseJSON(data);}catch(e){/*cont*/}
    alert("here1");
      if($(returndata).size() >= 1){
          for(var i = 0; i < $(returndata).size(); i++){
              $("#" + returndata[i]).css('background', 'url(style/install/database/imgs/textbox_error.png)');
          }
          ResetButton();
          alert("here2");
    }else{
        $.post('functions/check_settings.php', function(data){
            alert(data);
            var postdata = data;
            $.trim(postdata);
            if(postdata == 'error'){
                alert("test2");
                $('#pdbe').show();
                $('#pdbe').effect("pulsate", { times:10 }, 10000);
                ResetButton();
            }else if(data == '0'){
                alert('connected!');
            }
        });
    }
});

这是check_settings.php

$cwd = getcwd();
$file = $cwd.'/dbconfig.php';
//check dbconfig created
if(file_exists($file)){
    include('./dbconfig.php');
}else{
    echo("error2");
    die();
}

//grab required vars
$host = $config['db']['host'];
$dbname = $config['db']['dbname'];

//test basic connection
try{
   $dbh = new PDO("mysql:host=$host;dbname=$dbname", $config['db']['username'], $config['db']['password']);
   $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
   echo("error");
   die();
}
echo("0");

就像我说的那样,第一个$.post()返回正确的数据,而第二次使用它时,它将错误地返回并导致if语句无法正常工作。

任何解决此问题的建议将不胜感激!

您的问题是多余的空间吗? 如果是这样,您可能会在不知不觉中在check_settings.php中打印空格或换行。 例如,您可能在第一行之前有空格或换行符

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM