2011-10-18 18 views
0

我有一个脚本的请求发送好友请求对话框在Firefox的控制台转换JavaScript变量从执行console.log(响应)到PHP

function requestCallback(response) 
{ 
    if(response && response.request) 
    { 
     console.log(response); 
     location.href='step2.php'; 
    } 
    else 
    { 
     location.href='step1.php'; 
    } 
} 

的执行console.log(响应)输出:

({request:THIS_IS_REQUEST_ID, to:[REQUESTED_USER_ID_1, REQUESTED_USER_ID_2, REQUESTED_USER_ID_ETC...]}) 

如何将变量console.log(response);转换为PHP变量?

因为我需要REQUESTED_USER_ID_1, REQUESTED_USER_ID_2这样的值,console.log(response);的JSON输出可以被PHP的json_decode,like this解析。

谢谢!

+2

您需要阅读AJAX以通过异步调用将数据传回给PHP。 –

+0

http://stackoverflow.com/questions/4716177/pass-a-js-variable-to-a-php-variable –

+0

在Stack Overflow上搜索你的问题的标题。有很多很多类似的问题。 –

回答

0

实际上,你不能将它们转换为PHP变量,但是你可以做的是,你可以通过这种方式将REQUESTED_USER_ID1 ... IDn发送到你设置为location.href的php文件中作为HTTP GET参数。

function requestCallback(response) 
{ 
    if(response && response.request) 
    { 
     console.log(response); 
     location.href='step2.php?ids='+response.to.join(","); 
    } 
    else 
    { 
     location.href='step1.php'; 
    } 
} 

然后在你的PHP文件step2.php,你可以用这种方式

<?php 
$userids = explode(",",$_GET['ids']); 
?> 

希望它可以帮助获得这些用户ID。

+0

谢谢,它的工作原理!顺便说一句,我很好奇为什么它必须命名'response.to.join'。我使用其他名称,但它不起作用。 – mokalovesoulmate

+0

我现在这个评论已经很晚了,但我刚刚遇到这个帖子。没有任何名称为“response.to.join”。 “响应”是具有属性“to”的对象,它是一个ID数组。然后调用“join”函数以便使用逗号连接数组的所有值。 –