2011-01-06 8 views
-1

Nun versuche ich, auf Facebook die Wand zu schreiben, aber ich bekomme diese Fehlermeldung:Fatal error: Call to undefined Methode stdClass :: stream_publish()

Fatal error: Call to undefined method stdClass::stream_publish()

Der Code ich versuche ist diese

<?php 

define('FB_APIKEY', '<Your Api Key>'); 
define('FB_SECRET', '<Secret>'); 
define('FB_SESSION', '<Session>'); 

require_once('facebook.php'); 

echo "post on wall"; 
echo "<br/>"; 

try { 
$facebook = new Facebook(FB_APIKEY, FB_SECRET); 
$facebook->api_client->session_key = FB_SESSION; 
$facebook->api_client->expires = 0; 
$message = ''; 

$attachment = array(
'name' => $_POST["name"], 
'href' => $_POST["href"], 
'description' => $_POST["description"], 
'media' => array(array('type' => 'image', 
'src' => $_POST["src"], 
'href' => $_POST["href"]))); 

$action_links = array(array('text' => 'Visit Us', 'href' => '<link to some place here>')); 

$attachment = json_encode($attachment); 
$action_links = json_encode($action_links); 

$target_id = "<Target Id>"; 
$session_key = FB_SESSION; 

if($facebook->api_client->stream_publish($message, $attachment, $action_links, null, $target_id)) { 
echo "Added on FB Wall"; 
} 
} catch(Exception $e) { 
echo $e . "<br />"; 
} 
?> 
+0

Welche Bibliothek verwenden Sie? Wo ist die eigentliche Frage? – Ivan

Antwort

0

Nun, wie es in der Fehlermeldung geschrieben ist gibt es keine Methode "stream_publish" in $ facebook-> api_client. Konsultieren Sie das Handbuch der Bibliothek, mit der Sie sich mit Facebook verbinden.

0

Wenn $facebook->api_client kein Objekt ist, dann ist die Zeile:

$facebook->api_client->session_key = FB_SESSION; 

Wird leise machen php werfen $facebook->api_client auf ein Objekt vom Typ stdClass. Welche, später, den Code, wird die Fatal error: Call to undefined method stdClass::stream_publish(), die Sie bekommen.

Try-Wechsel: ...

$facebook = new Facebook(FB_APIKEY, FB_SECRET); 
$facebook->api_client->session_key = FB_SESSION; 
$facebook->api_client->expires = 0; 

... 

zu fangen, wenn api_client falsch ist (oder vielleicht kein Objekt):

... 

$facebook = new Facebook(FB_APIKEY, FB_SECRET); 

if (!($facebook->api_client)) { 
    //throw error 
    echo 'Need to sort this bit out'; 
    exit; 
} 

$facebook->api_client->session_key = FB_SESSION; 
$facebook->api_client->expires = 0; 

... 

Und dann, wenn das eine nicht werfen Fehler, Sie müssten untersuchen, warum $facebook->api_client null ist.

Verwandte Themen