Ich benutze Facebook PHP SDK und versuche, Token-ID von einer Seite an eine andere zu senden. Ich benutze diesen Code - http://www.krizna.com/demo/login-with-facebook-using-php/. Ich benutzeWie kann ich Wert an FacebookRedirectLoginHelper in PHP übergeben
$helper = new FacebookRedirectLoginHelper('http://www.krizna.com/fbconfig.php');
Ich habe versucht, Wert wie folgt zu senden:
$helper = new FacebookRedirectLoginHelper('http://www.krizna.com/fbconfig.php?value='.$value);
aber ich weiß nicht Wert in fbconfig.php
-Datei erhalten, wenn ich versuche:
$value = $_GET['value'];
Ich habe auch verwendet Sitzung für das Senden von Werten, aber es funktioniert nicht. Wie kann ich einen Wert an FacebookRedirectLoginHelper (fbconfig.php
) senden?
fbconfig.php
<?php
session_start();
$value = $_GET['value_new'];
$fb = new \Facebook\Facebook([
'app_id' => $config->facebook->app_id,
'app_secret' => $config->facebook->app_secret
]);
$helper = $fb->getRedirectLoginHelper();
try {
if ($access_token = $helper->getAccessToken()) {
try {
// Returns a `Facebook\FacebookResponse` object with the requested fields
$response = $fb->get('/me?fields=name,id,email,picture', $access_token);
$user = $response->getGraphUser();
$fbid = $user->getId(); // To Get Facebook ID
$fbfullname = $user->getName(); // To Get Facebook full name
$femail = $graphObject->getEmail();// To Get Facebook email ID
$_SESSION['FBID'] = $fbid;
$_SESSION['FULLNAME'] = $fbfullname;
$_SESSION['EMAIL'] = $femail;
//Then do whatever you want with that data
$value = $_SESSION['value'];
header("Location: index.php?value_new=$value");
} catch (\Facebook\Exceptions\FacebookResponseException $e) {
error_log('Graph returned an error: ' . $e->getMessage());
} catch (\Facebook\Exceptions\FacebookSDKException $e) {
error_log('Facebook SDK returned an error: ' . $e->getMessage());
}
}
} catch (\Facebook\Exceptions\FacebookResponseException $e) {
// When Graph returns an error
error_log('Graph returned an error: ' . $e->getMessage());
} catch (\Facebook\Exceptions\FacebookSDKException $e) {
// When validation fails or other local issues
error_log('Facebook SDK returned an error: ' . $e->getMessage());
}
index.php
<?php if (isset($_SESSION['FBID'])): ?><!-- After user login -->
<div class="container">
<h1>value <?php $value_new = $_GET['value_new']; echo $value_new; ?></h1>
</div>
<? endif ?>
Die URL, die Sie FacebookRedirectLoginHelper geben, ist die URL, zu der Facebook weiterleitet, sie werden alle Abfragezeichenfolge ausziehen, die ich sicher bin. Warum benötigt fbconfig das Token? Und ich bin mir sicher, dass dies mit $ _SESSION –
möglich ist. Ich habe versucht mit $ _SESSION, aber es ist immer Null. Wie kann ich es benutzen? – jason
Hallo Jason. Ich schaue mir nur einen Teil meines Codes an, ich werde dir hoffentlich eine Antwort geben. –