redirect na fb like

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior, Medior and Junior SAP HANA Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 12696 Introductie Our client is the world's leading provider of lithography systems for the semiconductor industry, manufacturing complex machines that are critical to the production of integrated circuits or chips. Our purpose is “unlocking the potential of people and society by pushing technology to new limits”. We do this guided by the principles “Challenge”, “Collaborate” and “Care”. Wat verwachten we van jou? SAP Certified Application Associate - SAP HANA Cloud Modeling (training and/or certification) Bachelor degree or higher Excellent understanding of SAP HANA (2.0 / Cloud), Data Modelling and writing

Bekijk vacature »

Sander Zijnstra

Sander Zijnstra

12/12/2012 00:43:26
Quote Anchor link
Ik heb het volgende script om een facebook pagina te liken. Als je op de Like button klikt zorgt dit voor 2 acties.
a. Het opent een window om je eigen bijschrift bij de post op je wall te zetten.
b. Een redirect naar een URL

Deze acties worden tegelijk uitgevoerd. Ik zou graag willen dat de redirect wordt uitgevoerd na het drukken op post to facebook, dit is een knop waar ik volgens mij geen controle over heb.

Iemand een suggestie?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head></head>
<body>
<div id="fb-root"></div>

<fb:like href="http://www.facebook.com/????????????" send="false" width="450" show_faces="false" font=""></fb:like>

<script type="text/javascript">
    window.fbAsyncInit = function() {
        FB.init({appId: '???????????????', status: true, cookie: true, xfbml: true});
        FB.Canvas.setSize({ width: 520, height: 1500 });
        FB.Event.subscribe('edge.create',
            function(response) {
                // put redirect code here eg
                window.location = "http://www.facebook.com/?????????????";
            }
        );
    };

    //Load the SDK asynchronously
    (function() {
        var e = document.createElement('script'); e.async = true;
            e.src = document.location.protocol +
              '//connect.facebook.net/en_US/all.js';
            document.getElementById('fb-root').appendChild(e);
    }());
</script>
</body>
</html>
Gewijzigd op 12/12/2012 08:24:16 door Kees Schepers
 
PHP hulp

PHP hulp

20/04/2024 02:33:13
 
Kees Schepers

kees Schepers

12/12/2012 08:31:54
Quote Anchor link
Graag in het vervolg code insluiten in code tags. Dit maakt het veel beter leesbaar.

Verder ben je wel goed op weg, althans het edge.create event wordt getriggerd nadat iemand je pagina heeft geliked. Je zou dan inderdaad een div (of popup zoals bootstrap modal of fancybox oid) kunnen openen waarmee de persoon in kwestie ook iets op zijn eigen tijdlijn (wat jij wall noemt) kan vermelden.

Ik geloof dat het posten op tijdlijn een ander event is (even zoeken ... ) en volgens mij is dat comment.create of message.send (zou je even moeten testen) en krijg je dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml">
<head></head>
<body>
<div id="fb-root"></div>

<fb:like href="http://www.facebook.com/????????????" send="false" width="450" show_faces="false" font=""></fb:like>

<script type="text/javascript">
    window.fbAsyncInit = function() {
        FB.init({appId: '???????????????', status: true, cookie: true, xfbml: true});
        FB.Canvas.setSize({ width: 520, height: 1500 });
        FB.Event.subscribe('edge.create', function(response) {
                //open facebook send popup
            }
        );
    FB.Event.subscribe('message.send', function() {
        //alert('Dude! Bedankt voor het posten op je tijdlijn ik ga je nu wegsturen!');
        window.location = 'http://www.google.nl';
    });
    };

    //Load the SDK asynchronously
    (function() {
        var e = document.createElement('script'); e.async = true;
            e.src = document.location.protocol +
              '//connect.facebook.net/en_US/all.js';
            document.getElementById('fb-root').appendChild(e);
    }());
</script>
</body>
</html>


Zo te zien weet je ook niet wat een app ID is. Deze moet je zelf aanmaken. Je gaat naar https://developers.facebook.com/ en maakt daar een account aan. Als je eenmaal een account aangemaakt heb maak je een "app" aan in het menu en dan krijg je vanzelf een appid die je op de ?????????? kunt zetten :)

Succes!

Toevoeging op 12/12/2012 08:36:31:

Voor het posten naar de 'wall' heb je dit nodig overigens:

https://developers.facebook.com/docs/reference/dialogs/feed/

Het is nog best wel eenvoudig, vooral de URL variant. Gebruik je jQuery? Dan kan ik wel een voorbeeldje maken voor je.
Gewijzigd op 12/12/2012 08:32:23 door kees Schepers
 
Sander Zijnstra

Sander Zijnstra

12/12/2012 11:04:57
Quote Anchor link
Dank voor je reactie! Wat is de code tag om het script weer te geven? Domme vraag i know.

De plekken van de ???? zijn mij bekent. Heb deze bewust veranderd.
De code op zich werkt goed, en er wordt gepost op de tijdlijn. Alleen de redirect naar in jou script google werkt niet. Zie ovllemmer.nl/test2/test2.html

Het probleem in mijn script is dat hij wel werkt maar gelijk nadat je hebt geliked waardoor je geen kans krijgt om de tekst voor je tijdlijn in te vullen.
Zie ovllemmer.nl/test2/test.html
 
Jordi Kroon

Jordi Kroon

12/12/2012 11:59:26
Quote Anchor link
[code]code...[/code]
Gewijzigd op 12/12/2012 12:00:21 door Jordi Kroon
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.