Facebook PHP SDK捕获类事件
如果用户喜欢iframe页面标签,我需要使用顶部的官方Facebook“like”按钮记录到数据库中。我在stackoverflow进行了搜索,发现了一个javascript片段Facebook PHP SDK捕获类事件,facebook,facebook-like,Facebook,Facebook Like,如果用户喜欢iframe页面标签,我需要使用顶部的官方Facebook“like”按钮记录到数据库中。我在stackoverflow进行了搜索,发现了一个javascript片段 FB.Event.subscribe('edge.create', function(response) { alert('You liked the URL: ' + response); } ); 但它不会为官方按钮触发(仅与添加到页面中的按钮相同)?在异步调用中,我在FB.ini
FB.Event.subscribe('edge.create',
function(response) {
alert('You liked the URL: ' + response);
}
);
但它不会为官方按钮触发(仅与添加到页面中的按钮相同)?在异步调用中,我在FB.init之后和FB.Canvas之前声明它。在PHP中有没有一种方法可以在刷新时捕捉到这一点?JS或PHP都可以(因为JS可以简单地ajax一个PHP文件)。签名的请求包含他们是否喜欢该页面,但我需要在页面发生(或刚刚发生)时捕获它。
非常感谢您的帮助:-)请尝试:
window.fbAsyninit=函数(){
FB.Event.subscribe('edge.create',函数(targetUrl){
_gaq.push([''u trackSocial',facebook',like',targetUrl]);
});
};
我认为您只需要在fbAsyninit中设置下标。最终是用纯PHP的方式完成的 1:从facebook获取签名请求并提取喜欢的数据 2:创建一个变量$liked,并根据已签名的请求值设置为“是”或“否” 3:操纵会话-使用会话,因为当您“喜欢”时页面会刷新,但会话仍然存在(但请求值将发生更改)
谢谢科林,他试过了——等了24小时——但在分析报告中还是一无所获。我在谷歌和网络上读到的所有信息都表明,这只适用于iframe页面上的相似按钮,而不适用于页面选项卡上方的官方相似按钮?
if(isset($_SESSION['likestatus'])){
if($_SESSION['likestatus'] == "no" && $liked == "yes"){
// do mysql updatestuff cause has liked page since session started
$_SESSION['likestatus'] = $liked;
}
else{
$_SESSION['likestatus'] = $liked;
}
}
else {
$_SESSION['likestatus'] = $liked;
}