2011-10-04 58 views
1

我有了存储里面的一些数据是成功的功能:如何使用JavaScript和和PHP来存储变量?

function(receiverUserIds) { 
console.log("IDS : " + receiverUserIds.request_ids); 
} 

这将记录:IDS:123123213,4645646654,7897987989,......

我想要做的就是抓住所有这些ID并将它们存储在数据库中。

一个办法,我想这样做是用ajax:

function(receiverUserIds) { 
     console.log("IDS : " + receiverUserIds.request_ids); 
     $.ajax({ 
      type: "POST", 
      url: "<?php echo $_SERVER['PHP_SELF']; ?>", 
      friends_invite: receiverUserIds.request_ids, 
      success: function(msg){ 
       /* alert("Data Saved: " + msg); */ 
      } 
     }); 
} 

,并在同一页上:

if(isset($_POST['friends_invite'])){ 
print_r($_POST['friends_invite']); 
} 

,但它似乎并没有工作。

ajax或者我不知道的东西可能是错的。也许你们可以提出另一种方法来做到这一点.. ??

有什么想法?

感谢

编辑:如果我启用报警lert("Data Saved: " + msg);我得到一个警告,所以我知道,Ajax是成功的,但我没有看到我的$_POST被呼应了

+0

这种方法应该工作。定义'似乎不工作'。怎么了?当您在浏览器中查看源代码后,能否发布代码的代码片段? – mellamokb

+0

由于正在写出用PHP的JavaScript?否则,'_SERVER [PHP_SELF]'不可用。 –

+0

如果我启用alert alert(“Data Saved:”+ msg);我得到一个提醒,所以我知道ajax是成功的,但我没有看到我的$ _POST正在呼应 – Patrioticcow

回答

3

这种方法应该工作正常。首先突出的是你应该使用data选项来传递数据。有关更多信息,请参阅specs of the documentation

$.ajax({ 
    ... 
    data: { friends_invite: receiverUserIds.request_ids }, 
    ... 
}); 
+0

我试过了,仍然没有反应 – Patrioticcow

+0

使用fiddler(http://www.fiddler2.com/fiddler2/)或其他东西来跟踪什么数据流动来回而不是仅仅说“不起作用”。什么不行?发生了什么?什么没有发生?为什么?系统地逐步执行该过程,并查看在发生失败之前数据的运行距​​离。 – mellamokb

+0

如果我启用了警报'alert(“Data Saved:”+ msg);'我得到一个提醒,所以我知道阿贾克斯是成功的,但我没有看到我的'$ _POST'被回显出来 – Patrioticcow

1
friends_invite: receiverUserIds.request_ids 

我不相信的jQuery的原理是这样的。它必须要改变的东西,如:

data: 'friends_invite=' + receiverUserIds.request_ids 
1

使用这个 -

 $.ajax({ 
      type: "POST", 
      url: "<?php echo $_SERVER['PHP_SELF']; ?>", 
      'data':{friends_invite: receiverUserIds.request_ids}, 
      success: function(msg){ 
       /* alert("Data Saved: " + msg); */ 
      } 
     });