2015-04-05 136 views
0

我一直在这个简单的问题已经很长时间了,是的,我试图谷歌的答案,虽然没有运气,问题是,我的ajax请求甚至不发送的东西,所以我猜它与语法有关,尽管它看起来对我完全没问题:阿贾克斯不发送请求

$(window).on('load',function() 
{ 
    $("#unfriend_user > p").click(function() 
    { 
     $.ajax(
     { 
      url: "php_includes/remove_friend.php", 
      type: "POST", 
      data: 
      { 
       user_1 : <?php echo $logged_id ?> , 
       user_2 : <?php echo $page_user_id ?>, 
       user_username : <?php echo $logged_username ?>, 
       user_password : <?php echo $logged_password ?> 
      }, 
      success: function(data) 
      { 
       alert(data); 
      } 
     }); 
    }); 
}); 

所有的PHP回显变量都有值。

问题就来了后,我将这两行:

​​3210

如果我删除这两条线和“”一切工作就好了。

+0

的'$ logged_username'和/或'$ logged_pa​​ssword'很可能打破了JavaScript中的客户端,从而停止从Ajax调用的值时,不断发生。检查您的浏览器中的调试控制台是否有任何错误。 – JCOC611 2015-04-05 18:04:30

+0

我刚刚意识到这些字符串不是数字,所以他们需要'.........耶稣基督我一直在寻找这么久的问题...... – Donny123 2015-04-05 18:05:36

+0

你也有很好的机会做某事如果您以纯文本形式将密码转储到您的页面,则会出错。看看你正在做的任何API的API,并寻找基于令牌的身份验证或不需要保留任何明文密码的东西。 – 2015-04-05 18:06:36

回答

3

如果你看看你呈现的HTML(“查看源文件”在浏览器中),你会发现你的JavaScript看起来像:

data: 
    { 
     user_1 : 1 , 
     user_2 : 2, 
     user_username : someusername, 
     user_password : somepassword 
    }, 

因为这些都是字符串(我假设),你需要说出来了:

data: 
    { 
     user_1 : <?php echo $logged_id ?> , 
     user_2 : <?php echo $page_user_id ?>, 
     user_username : "<?php echo $logged_username ?>", 
     user_password : "<?php echo $logged_password ?>" 
    }, 
+0

是的,这是问题,我会在几分钟内接受你的答案,有时我想知道当我犯这样的错误时,我甚至被允许编码。 。 – Donny123 2015-04-05 18:10:54

1

可能是你的制动JavaScript语法 因为用户名和密码字符串,你需要引用他们

最好的办法WIL l条使用json_encode

json_encode会把报价需要

$(window).on('load',function() 
{ 
    $("#unfriend_user > p").click(function() 
    { 
     $.ajax(
     { 
      url: "php_includes/remove_friend.php", 
      type: "POST", 
      data: 
      { 
       user_1 : <?php echo json_encode($logged_id) ?> , 
       user_2 : <?php echo json_encode($page_user_id) ?>, 
       user_username : <?php echo json_encode($logged_username) ?>, 
       user_password : <?php echo json_encode($logged_password) ?> 
      }, 
      success: function(data) 
      { 
       alert(data); 
      } 
     }); 
    }); 
});