Im Mai dieses Jahres hatte ich ein kurzes Tutorial geschrieben, wie man mit PHP-Bordmitteln ein Facebook-Event erstellen kann. In einem Kommentar wurde ich gebeten, noch zu erklären, wie ein Event-Bild anzuhängen ist. In einem Schritt geht das meines Wissens nicht, aber man kann sofort nachdem man das Event erstellt hat dieses bearbeiten und das Bild hinzufügen. Dafür benötigt man die Event-ID (siehe vorletzte Zeile in meinem letzten Tutorial zu diesem Thema) und folgenden Code:
#!/usr/local/bin/php5 <?php echo "Tutorial: Facebook API mit PHP Bordmitteln:"; echo "Ein Event mit einem Bild versehen."; echo "\n\n"; // OAuth Tokens $accesstoken = "..."; $eventid="..."; $APIurl = "https://graph.facebook.com/$eventid/picture"; $filename="test.jpg"; // muss mind. 200x200pix sein, max 4MB! $contenttype="image/jpeg"; // auch png möglich $file_contents = file_get_contents($filename); // Multipart-Request bauen $mpbound=microtime(true); $content= "--".$mpbound."\r\n"; $content.='Content-Disposition: application/x-www-form-urlencoded;'; $content.=' name="access_token"'; $content.="\r\n\r\n"; $content.=$accesstoken; $content.="\r\n"; $content.="--".$mpbound."\r\n"; $content.='Content-Disposition: application/x-www-form-urlencoded;'; $content.=' name="source"; '; $content.='filename="'.basename($filename).'"'; $content.="\r\n"; $content.="Content-Type: $contenttype\r\n\r\n"; $content.=$file_contents."\r\n"; $content.="--".$mpbound."--\r\n"; // POST vorbereiten und ausführen $opts = array('http' => array( 'method' => 'POST', 'header' => 'Content-Type: multipart/form-data; boundary='.$mpbound, 'content' => $content ) ); $result = file_get_contents($APIurl, false, stream_context_create($opts)); // Falls gewünscht das Ergebnis ausgeben (sollte "true" sein) echo "\nResult: " . $result; echo "\n\n... das war's!\n"; ?>
Achtung: Wenn das Bild zu klein ist (meines Wissens 200x200px) meldet Facebook zwar „true“, aber zeigt das Bild nicht an. Ebenso bei einer zu großen Datei (maximum 4 MB).
P.S.
Probleme? Fragen? Anregungen? Ich helfe jederzeit und gerne – einfach einen Kommentar oder Mail schreiben, die Antwort kommt schnellstmöglich. Unternehmen, die Unterstützung, Beratung oder Schulung bei der API- oder Webprogrammierung, der Social-Media-Entwicklung oder dem Social-Media-Management benötigen finden zudem entsprechende Angebote meiner Firma auf der Website www.Frank-IT-Beratung.de
Ähnliches habe ich auch für Visual Basic beschrieben:
http://frank-it-beratung.com/blog/2013/02/21/tutorial-mit-visual-basic-ein-facebook-event-mit-foto-erstellen-teil-1/