Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
当某人在Facebook评论插件中留下评论时,发送通知电子邮件_Facebook_Api_Sdk - Fatal编程技术网

当某人在Facebook评论插件中留下评论时,发送通知电子邮件

当某人在Facebook评论插件中留下评论时,发送通知电子邮件,facebook,api,sdk,Facebook,Api,Sdk,当有人在Facebook评论插件中留言时,我如何发送通知电子邮件 我有这个脚本,但每当有人来到我的页面,我就会收到一封电子邮件 我只想在新用户评论页面时收到电子邮件 <script> window.fbAsyncInit = function() { FB.init({ appId : 'appid', // App ID channelUrl : '//http://www.corkdiscos.com/channel.html',

当有人在Facebook评论插件中留言时,我如何发送通知电子邮件

我有这个脚本,但每当有人来到我的页面,我就会收到一封电子邮件

我只想在新用户评论页面时收到电子邮件

<script> window.fbAsyncInit = function() {



    FB.init({
      appId      : 'appid', // App ID
      channelUrl : '//http://www.corkdiscos.com/channel.html', // Channel File
      status     : true, // check login status
      cookie     : true, // enable cookies to allow the server to access the session
      xfbml      : true  // parse XFBML
    });


FB.subscribe('comment.create', function(response){
  <?php   
 $to      = 'info@a2bdjs.com';
 $subject = 'Comment Posted on Testimonial Page';
 $message = 'Comment Posted on Testimonial Page';
 $headers = 'From: info@a2bdjs.com' . "\r\n" .
'Reply-To: info@a2bdjs.com' . "\r\n" .
'X-Mailer: PHP/' . phpversion();   
mail($to, $subject, $message, $headers);
?>
});

};


  // Load the SDK Asynchronously
  (function(d){
    var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
    js = d.createElement('script'); js.id = id; js.async = true;
    js.src = "//connect.facebook.net/en_US/all.js";
    d.getElementsByTagName('head')[0].appendChild(js);
  }(document));

 </script>
window.fbAsyninit=function(){
FB.init({
appId:'appId',//应用程序ID
频道URL:'//http://www.corkdiscos.com/channel.html“,//通道文件
状态:true,//检查登录状态
cookie:true,//启用cookie以允许服务器访问会话
xfbml:true//解析xfbml
});
订阅('comment.create',函数(响应){
});
};
//异步加载SDK
(职能(d){
var js,id='facebook jssdk';if(d.getElementById(id)){return;}
js=d.createElement('script');js.id=id;js.async=true;
js.src=“//connect.facebook.net/en_US/all.js”;
d、 getElementsByTagName('head')[0].appendChild(js);
}(文件);

你有点奇怪。您将服务器端代码(PHP)放在客户端代码(Javascript)中。PHP代码将在您的服务器上执行,因此您必须将该代码放在一个单独的文件中,并对该文件进行AJAX调用(使用JavaScript),该文件将执行PHP代码并发送邮件

去掉
FB.Subscribe
函数中的PHP代码,改为:

FB.subscribe('comment.create', function(response){
    if(typeof console != 'undefined') {
        console.log(response);
    }
});
然后打开控制台(开发者工具的Chrome版本为F12,firefox版本为firebug)。
查看
response
变量,您将能够看到发生了什么类型的事件。

您发现了一些奇怪的事情。您将服务器端代码(PHP)放在客户端代码(Javascript)中。PHP代码将在您的服务器上执行,因此您必须将该代码放在一个单独的文件中,并对该文件进行AJAX调用(使用JavaScript),该文件将执行PHP代码并发送邮件

去掉
FB.Subscribe
函数中的PHP代码,改为:

FB.subscribe('comment.create', function(response){
    if(typeof console != 'undefined') {
        console.log(response);
    }
});
然后打开控制台(开发者工具的Chrome版本为F12,firefox版本为firebug)。
查看
response
变量,您将能够看到发生了什么类型的事件。

您必须按照以下方式进行ajax调用

/* Get FB comment notification */
<script>
    $(window).load(function(){
        FB.Event.subscribe('comment.create', function(response) {
            var data = {
                action: 'fb_comment',
                url: response
            };

            $.post( '`URL TO THE PHP FILE CONTAINING THE MAIL CODE`', data );
        });
    });
</script>
/*获取FB评论通知*/
$(窗口)。加载(函数(){
FB.Event.subscribe('comment.create',函数(响应){
风险值数据={
行动:“fb_评论”,
url:响应
};
$.post(''URL指向包含邮件代码'',数据的PHP文件);
});
});
然后将以下内容放入上述指定的php文件中

<?php   
 if ( isset( $_POST['url'] ) ) {
     $to      = 'info@a2bdjs.com';
     $subject = 'Comment Posted on Testimonial Page';
     $message = 'Comment Posted on Testimonial Page';
     $headers = 'From: info@a2bdjs.com' . "\r\n" . 'Reply-To: info@a2bdjs.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion();   
     mail($to, $subject, $message, $headers);
}
?>


为了安全起见,您可以运行更多的检查。

您必须以以下方式进行ajax调用

/* Get FB comment notification */
<script>
    $(window).load(function(){
        FB.Event.subscribe('comment.create', function(response) {
            var data = {
                action: 'fb_comment',
                url: response
            };

            $.post( '`URL TO THE PHP FILE CONTAINING THE MAIL CODE`', data );
        });
    });
</script>
/*获取FB评论通知*/
$(窗口)。加载(函数(){
FB.Event.subscribe('comment.create',函数(响应){
风险值数据={
行动:“fb_评论”,
url:响应
};
$.post(''URL指向包含邮件代码'',数据的PHP文件);
});
});
然后将以下内容放入上述指定的php文件中

<?php   
 if ( isset( $_POST['url'] ) ) {
     $to      = 'info@a2bdjs.com';
     $subject = 'Comment Posted on Testimonial Page';
     $message = 'Comment Posted on Testimonial Page';
     $headers = 'From: info@a2bdjs.com' . "\r\n" . 'Reply-To: info@a2bdjs.com' . "\r\n" . 'X-Mailer: PHP/' . phpversion();   
     mail($to, $subject, $message, $headers);
}
?>


为了安全起见,您可以再进行几次检查。

iv使用上述代码更新了我的网页。我在console.log中寻找什么?iv使用上述代码更新了我的网页。我在console.log中查找什么??