Facebook fan page e funzione signed_request

Discussioni e problematiche sul linguaggio PHP

Moderatori: maurizio, markdesign

Regole del forum
Per scrivere del codice all'interno di ogni post, utilizzare il tag: [syntax=il_linguaggio]codice[/syntax] sostituendo "il_linguaggio" con il linguaggio del codice che dovete inserire, ad esempio: html, css, javascript, php, asp, ecc...

Facebook fan page e funzione signed_request

Messaggioda Caluk » mercoledì 21 dicembre 2011, 3:24

Ciao ragazzuoli, chiedo il vostro aiuto per migliorare una FanPage.

Inizio subito con il dire che il tab personalizzato funziona alla grande. Ho creato una risorsa free alla quale si può accedere solo dopo aver cliccato su Mi Piace. Il codice funziona benissimo, c'è solo un piccolo problema. Dopo che l'utente clicca su Mi Piace, al posto di reindirizzarlo al tab personalizzato lo porta alla bacheca. Se poi l'utente clicca nel tab dove è presente la risorsa allora riesce a vedere correttamente il link.

Quello che vorrei fare è che al momento del clic su Mi Piace, al posto di reindirizzare l'utente nella bacheca, lo porta direttamente nel tab dove c'è la risorsa free.

Avete qualche consiglio?

Il link della pagina è questo

Il codice è quello sotto.

Sintassi: php [ Scarica ] [ Nascondi ]
  1. <?php
  2. function parse_signed_request($signed_request, $secret) {
  3.   list($encoded_sig, $payload) = explode('.', $signed_request, 2);
  4.  
  5.   // decode the data
  6.   $sig = base64_url_decode($encoded_sig);
  7.   $data = json_decode(base64_url_decode($payload), true);
  8.  
  9.   if (strtoupper($data['algorithm']) !== 'HMAC-SHA256') {
  10.     error_log('Unknown algorithm. Expected HMAC-SHA256');
  11.     return null;
  12.   }
  13.  
  14.   // check sig
  15.   $expected_sig = hash_hmac('sha256', $payload, $secret, $raw = true);
  16.   if ($sig !== $expected_sig) {
  17.     error_log('Bad Signed JSON signature!');
  18.     return null;
  19.   }
  20.  
  21.   return $data;
  22. }
  23.  
  24. function base64_url_decode($input) {
  25.   return base64_decode(strtr($input, '-_', '+/'));
  26. }
  27. $data = parse_signed_request($_REQUEST['signed_request'], 'qui ho inserito il secretkey);
  28. $pageID = $data['page']['id']; // l'ID della Pagina su cui è installato il Tab
  29. $liked = $data['page']['liked']; // Boolean che indica se l'utente corrente è fan della Pagina
  30. $admin= $data['page']['admin']; // Boolean che indica se l'utente corrente è admin della Pagina
  31. $language= $data['user']['locale']; // La lingua dell'utente
  32.  
  33. if(!$data['page']['liked']){
  34. ?>
  35.     qui ho messo il codice per i non fan
  36. <?php
  37. }else{
  38. ?>
  39.     qui ho messo il codice per i fan
  40. <?php
  41. }
  42. ?>
  43.  


Grazie :)
Caluk

Amministratore

Avatar utente
 
Messaggi: 410
Iscritto il: giovedì 4 febbraio 2010, 18:17
Località: Castellana Sicula

Torna a PHP