Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 31

Das gabs schonmal aber... : App -> Pinnwandeinträge auf Benutzer-Wall (von MYAPP)

Das ist eine Diskussion über Das gabs schonmal aber... : App -> Pinnwandeinträge auf Benutzer-Wall (von MYAPP) im Grundlagen / Tipps Forum; Hi, hab hier schon gelesen, vieles weiß anscheinend der allwissende Chronos was Facebook angeht *anbete* Also wie im Titel beschrieben, ...

  1. #1
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17

    Standard Das gabs schonmal aber... : App -> Pinnwandeinträge auf Benutzer-Wall (von MYAPP)

    Hi,

    hab hier schon gelesen, vieles weiß anscheinend der allwissende Chronos was Facebook angeht *anbete*

    Also wie im Titel beschrieben, schreib ich gerade eine App das an Pinnwände der User posten soll. Kurzum für Xbox360-User die ein CustomDashboard benutzen.
    Vom Dashboard soll einfach eine Get- URL aufgerufen werden (bisher meine momentanige Idee, stößt auch bei den DashboardEntwicklern auf große Zustimmung),
    die dann die UserID, Achievementname und Beschreibung enthält. Also das auch nicht-offizielle-Xboxuser ihre Erfolge bei Facebook veröffentlichen können^^

    Keine Sorge ich arbeite am legalen, dem Facebookteil. Ich hab da nichts mit der Xboxentwicklung zu tun, bis auf denen zu sagen, was für Daten sie wie schicken sollen.

    Ich hab bereits eine App erstellt auf PHP -Basis.
    Dank der ...übersichtlichen... Facebookdokumentation zum Entwicklerbereich bin ich bisher noch nicht allzuweit gekommen und hauptsächlich über Google bei Chronos' - Thread gelandet
    Also bitte auch nicht wundern, da ich die FacebookAPIs nicht groß verstehe (das gröbste schon) hab ich mir bisher folgendes zusammengeklaut:
    PHP-Code:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
     <head>
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <title>My great wall post</title>
     </head>

     <body>
    <?php
    #require_once './facebook. php ';

    #object parser
    function facebook()
    {
     if(isset(
    $_REQUEST['signed_request']))
     {
      
    $encoded_sig null;
      
    $payload null;
      list(
    $encoded_sig$payload) = explode('.',$_REQUEST['signed_request'],2);
      
    $sig base64_decode(strtr($encoded_sig,'-_','+/'));
      
    $data json_decode(base64_decode(strtr($payload,'-_','+/'),true));
      return 
    $data;
     }
     return 
    false;
    }

    #fb-app-id
    $fbconfig['appid']  = "****";
    $fbconfig['secret'] = "****"

    #fb-instance
    $facebook = new Facebook(array(
     
    'appId'  => $fbconfig['appid'],
     
    'secret' => $fbconfig['secret'],
        
    'cookie'    => true,
     
    'domain' => 'b*****s.de'
    ));

    #user data
    $session $facebook->getSession();
    if(
    $session)
    {  
     try
     {  
      
    $fbme $facebook->api('/me');
     }
     catch(
    FacebookApiException $e)
     {
      
    error_log($e);
     }  
    //if($session)

    #permissions
    if(!$fbme)
    {
     
    #access permission
     
    $loginUrl $facebook->getLoginUrl(array(
      
    'canvas'     => 1,
      
    'fbconnect'  => 0,
      
    'req_perms'  => 'publish_stream',
      
    'next'       => $canvas_base_url.'index. php ',
      
    'cancel_url' => $canvas_base_url
     
    ));
     echo 
    '<script type="text/javascript">top.location.href=\''.$loginUrl.'\';</script>';
    //else($fbme)

    #wall post
    try
    {
     
    $wallpost $facebook->api('/me/feed','post',array(
      
    'name'        => 'Xbox360-Achievments by FSD',
      
    'message'     => 'testtesttest',
      
    'privacy'     => array(
       
    'value'   => 'CUSTOM',
       
    'friends' => 'SELF'
      
    ),
      
    'description' => 'testing my description',
      
    'picture'     => 'http://www.google.de/images/logos/ps_logo2.png',
      
    'caption'     => 'apps.facebook.com/myapp',
      
    'link'        => 'http://apps.facebook.com/myapp',
      
    'action'      => ''
     
    ));
     if(
    $facebook->api('/me/feed/','post',$wallpost))
     {
      echo 
    "Added on FB Wall";
     }
    }
    catch(
    FacebookApiException $e)
    {
     
    d($e);
    }
    ?>
    Die eingebundene facebook. php habe ich leider nicht und finde ich auch nicht oO wo gibts die denn? Denke mal die fehlt mir noch,
    da ich den momentanen Fehler " Fatal error: Class 'Facebook' not found in /app/www/post. php on line 32 " habe.
    Wobei die Funktion ja aber eigentlich ein paar Zeilen oben drüber beschrieben wird "function facebook()...."

    Ich komme seit 2 Stunden nicht auf den Fehler und bin am hin und her probieren...und am verzweifeln.

    MfG
    TFS

    PS: Jeder der wertvolles Material zur Lösung gibt, wird am Schluss auch mit erwähnt. Also Chronos du hast deinen Platz schonmal sicher^^

  2. #2
    Experte Avatar von Kulle
    Registriert seit
    20.05.2010
    Beiträge
    830

    Standard

    Also wenn ich da kurz rüberschaue habe ich glaube denn fehler gefunden (bin kein profi aber Anfänger ) und zwar die Zeile:
    $facebook = new Facebook

    (weiß nu nicht ob es stimmt oder nicht) aber da alle drauffolgenden klein geschrieben sind und du die function groß machst könnte es das sein.
    mfg
    kulle

  3. #3
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17
    Themenstarter

    Standard

    das wars leider nicht, hab alle facebook's durch 'Facebook' ersetzt, selber fehler^^

  4. #4
    Experte Avatar von Kulle
    Registriert seit
    20.05.2010
    Beiträge
    830

    Standard

    Ok dann kann ich dir leider nicht weiterhelfen, musste wohl auf Chronos warten.
    mfg
    kulle

  5. #5
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17
    Themenstarter

    Standard

    ahaaaa....hab die facebook. php gefunden^^ ...jaja die sdk muss man auch erstmal finden -.-
    gut jetzt ein Fatal error: Call to undefined method Facebook::getSession() in /app/www/post. php on line 40 fehler...ich arbeite dran

  6. #6
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17
    Themenstarter

    Standard

    okay lets bring the errors to a new level... -.-
    gut kurz zum alten fehler, das lag an der neuen sdk. diese verwendet
    $facebook = new Facebook(…);
    $user = $facebook->getUser();
    if ($user) {
    // proceed knowing you have a logged in user who's authenticated
    } else {
    // proceed knowing you require user login and/or authentication
    }


    anstatt


    $facebook = new Facebook(…);
    $session = $facebook->getSession();
    if ($session) {
    // proceed knowing you have a valid user session
    } else {
    // proceed knowing you require user login and/or authentication
    }



    gut und schön alles korrigiert aber jetzt lädt er kurz die standartpage (mit allen infos die FB aus deinem profil auslesen kann) zeigt diese ganz kurz und bringt mir dann
    folgenden satz auf einer leeren seite:
    "States do not match. CSRF?Invalid credentials"

  7. #7
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17
    Themenstarter

    Standard

    update:
    hat mit dem permissions-block zu tun
    PHP-Code:
    if(!$fbme)
    {
     
    #access permission
     
    $loginUrl $facebook->getLoginUrl(array(
      
    'canvas'     => 1,
      
    'fbconnect'  => 0,
      
    'req_perms'  => 'publish_stream',
      
    'next'       => $canvas_base_url.'index.       php          ',
      
    'cancel_url' => $canvas_base_url
     
    ));
     echo 
    '<script type="text/javascript">top.location.href=\''.$loginUrl.'\';</script>';
    //else($fbme) 
    aber keine ahnung was genau.
    der wall-post funktioniert letztendlich auch nicht und die dokumentation ist zu spärlich dazu, zudem funktionier die eigene eingebaute test-methode nicht.
    solangsam glüht meine tasta^^ und mein gehiiiiirn....

  8. #8
    TFS
    TFS ist offline
    Neu hier
    Registriert seit
    23.09.2011
    Beiträge
    17
    Themenstarter

    Standard

    juhu erster post steht
    script jetzt:
    PHP-Code:
     <?php 
    require_once 'facebook. php '
    ;


    //AuthToken kriegen
       
    $app_id "172987236113931";
       
    $app_secret "xxxx";
       
    $my_url "https://radiant-samurai-1827.herokuapp.com/";

       
    session_start();
       
    $code $_REQUEST["code"];

       if(empty(
    $code)) {
         
    $_SESSION['state'] = md5(uniqid(rand(), TRUE)); //CSRF protection
         
    $dialog_url "https://www.facebook.com/dialog/oauth?client_id=" 
           
    $app_id "&redirect_uri=" urlencode($my_url) . "&state="
           
    $_SESSION['state'];

         echo(
    "<script> top.location.href='" $dialog_url "'</script>");
       }

       if(
    $_REQUEST['state'] == $_SESSION['state']) {
         
    $token_url "https://graph.facebook.com/oauth/access_token?"
           
    "client_id=" $app_id "&redirect_uri=" urlencode($my_url)
           . 
    "&client_secret=" $app_secret "&code=" $code;

         
    $response file_get_contents($token_url);
         
    $params null;
         
    parse_str($response$params);

         
    $graph_url "https://graph.facebook.com/me?access_token=" 
           
    $params['access_token'];

         
    $user json_decode(file_get_contents($graph_url));


    //Message zusammenbasteln
            
    $message $user->name " has received an Xbox360-Achievement in ".$game.": \n".$achievementname."\n".$achievementdescription


    //Posten     
            
    $ch curl_init();
            
            
    curl_setopt($chCURLOPT_URL'https://graph.facebook.com/'.$user->id.'/feed');
            
    curl_setopt($chCURLOPT_POSTtrue);
            
    curl_setopt($chCURLOPT_POSTFIELDS, array('access_token' => $params['access_token'],
                                                       
    'message' => $message));
            
            
    curl_exec($ch);
       }
       else {
         echo(
    "The state does not match. You may be a victim of CSRF.");
       }

     
    ?>

  9. #9
    Administrator Avatar von Chronos
    Registriert seit
    08.01.2009
    Ort
    127.0.0.1
    Beiträge
    1.908

    Standard

    tjo..glaub in zukunft einfach nimmer antworten, dann löst ihr das von selbst. *g*
    ne sorry hatte gestern noch bis 20 Uhr nen GPS Kurs und nach 13 Stund arbeiten war i dann tot.

    1.) den Secret Key NIE Posten, er heißt nicht um sonst Secret/Geheim *g*
    2.) $facebook = new Facebook( nein gehört schon groß geschrieben. Du inizialisierst hier eine neue Klasse die Facebook heißt, das passt schon so (die Klasse steht ürigends in der facebook. php )
    3.) ja stimmt in der aktuellen SDK Version gibt es die getSession() nimmer
    4.) N aschön das es klappt...wobei ich sagen muss, das du im aktuellen fall die facebook. php garnicht brauchst wenn ich mir den Code so anschauen.
    Du erstellst deinen eigenen Loginlink, verbindest dich mittels curl zum facebook Server und sendest so den post ab....also das ist halt wirklich alles ausprogrammiert und nutz nicht die SDK.
    Ich höre 10 Stimmen in meinem Kopf, 9 sagen ich sei nicht verrückt, die 10. summt die Melodie von Tetris
    Join us - Starter_Forum@Twitter or join me brokenlinkAT@Twitter
    Kein Support per PN
    brokenlink.at - coming soon

  10. #10
    Produrax
    Gast

    Standard

    Ich weiß zwar nicht genau was ihr da werkelt, aber muss session_start() nicht immer an oberster Stelle stehen?

Seite 1 von 4 123 ... LetzteLetzte

Ähnliche Themen

  1. Posting to users wall
    Von marco23554 im Forum Grundlagen / Tipps
    Antworten: 10
    Letzter Beitrag: 19.02.2012, 12:08
  2. Foreneigene Gamercard herstellen.Aber wie?
    Von Daddy im Forum Hilfe gesucht!
    Antworten: 7
    Letzter Beitrag: 28.02.2011, 19:55
  3. Antworten: 0
    Letzter Beitrag: 11.01.2011, 11:46
  4. Computer-Benutzer Problem-Melde-Formular
    Von fox im Forum Stammtisch
    Antworten: 0
    Letzter Beitrag: 30.08.2010, 21:04
  5. Zum Totlachen aber herrlich
    Von Ghostrider im Forum Stammtisch
    Antworten: 5
    Letzter Beitrag: 07.01.2010, 11:03

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •