gpt4 book ai didi

javascript - Facebook js SDK 将 ajax 变量发送到 PHP

转载 作者:行者123 更新时间:2023-12-03 06:04:00 24 4
gpt4 key购买 nike

首先感谢您的关注。我想要的是使用 Facebook js SDK 获取用户的名称和 id 并将它们发送到同一页面中的 php (index.php)。我设法获取用户名和 id 并将它们保存在 JS 中的 2 个变量中(js_fb_id 和 js_fb_name),但是当我尝试进行 ajax 调用并将它们发送到 php 时,没有任何反应。

所以,在我的index.php 上我有ajax 脚本

            var js_fb_id = response.id; 
var js_fb_name = response.name; //this variables are set after the user is loged in
$.post( 'index.php',
{
php_fb_id: js_fb_id,
php_fb_id: js_fb_name
},

function (data){

console.log(data);
}
)

稍后,我想通过 AJAX 发送变量

        <?php if ( isset( $_POST['php_fb_id'] ) ) {
echo $_POST['php_fb_id'];
}
?>

这可能吗?当我使用单独的页面进行 AJAX 调用时它可以工作,但我无法从那里获取 php 变量到我的 index.php 页面。

谢谢

最佳答案

所以基本上这里发生的是ajax脚本在页面加载时触发。然而这只是在 dom 已经渲染之后。要解决此问题,您需要在特定事件上触发 ajax 函数,例如:单击按钮。

另请注意,由于您的整个页面都是 html 格式,因此 ajax 函数将整个页面作为“数据”返回,而不是您尝试设置的 php 变量。(您将能够在控制台中看到这一点)

另请注意,如果要打印页面上的值,则必须通过 ajax 修改回调函数中的 html,例如:

$(document).ready(function() {

$('#post').click(function() {

$.post( 'text.php',
{
php_fb_id: js_fb_id,
php_fb_name: js_fb_name
},

function (data, status){

$("#txt").html(data); //you can print returned data
console.log(data);
}
)

});
});

这应该放在一个单独的 php 文件中,比如 text.php

<?php 
if ( isset( $_POST['php_fb_id'] ) ) {
echo $id = $_POST['php_fb_id'];
}

?>

关于javascript - Facebook js SDK 将 ajax 变量发送到 PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39633298/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com