2 Stimmen

facebook get user birthday

Alle,

Ich habe damit zu kämpfen, den Geburtstag eines Benutzers über PHP abzurufen.

Ich habe im Internet nachgeschaut, und alle angegebenen Beispiele funktionieren nicht oder sind abgeschrieben worden.

Wie lautet der Code, um den Geburtstag eines Benutzers zu ermitteln, z. B. Jahr Tag Monat ?

ein klarer Code wäre nützlich

Grüße,

Jer

9voto

ifaour Punkte 37886

Dies verwendet PHP SDK v4, nicht v5, aber ich fand es einfacher zu folgen, und dieses Personen-Tutorial ist fantastisch. http://www.krizna.com/demo/login-with-facebook-using-php/

In den Kommentaren wird erklärt, wie man EMAIL abruft, und wenn man es wie folgt aktualisiert, erhält man GENDER (ich lerne noch, bin also nicht sicher, welche anderen Felder für diese Schritte gelten)

Aktualisieren Sie in Ihrer index.php folgendes:

<?php if ($_SESSION['FULLNAME'] !="") { 
?>
    <li class="nav-header">Name</li>
    <li><?php echo $_SESSION['FULLNAME']; ?></li>
<?php
} ?>

<?php if ($_SESSION['EMAIL'] !="") { 
?>
    <li class="nav-header">Email</li>
    <li><?php echo $_SESSION['EMAIL']; ?></li>
<?php
} 
?>

<?php if ($_SESSION['GENDER'] !="") { 
?>
    <li class="nav-header">Gender</li>
    <li><?php echo $_SESSION['GENDER']; ?></li>
<?php
} 
?>

Der obige Code sieht etwas anders aus als der Demo-Code, weil ich die

  • Zeilen in einem Feld IF BLANK, nicht anzeigen.

    Aktualisieren Sie in der Datei FBConfig.php Folgendes:

    // prüfen, ob eine Sitzung vorliegt

    if ( isset( $session ) ) {
        // graph api request for user data
        // $request = new FacebookRequest( $session, 'GET', '/me' );
        $request = new FacebookRequest( $session, 'GET', '/me?locale=en_US&fields=id, name, email, gender, birthday' );
        $response = $request->execute();
        // get response
        $graphObject = $response->getGraphObject();
        $fbid = $graphObject->getProperty('id');              // To Get Facebook ID
        $fbfullname = $graphObject->getProperty('name'); // To Get Facebook full name
        $fbemail = $graphObject->getProperty('email');    // To Get Facebook email ID
        $fbgender = $graphObject->getProperty('gender');    // To Get Facebook gender ID
        $fbbirthday = $graphObject->getProperty('birthday');    // To Get Facebook birthday ID
    
        /* ---- Session Variables -----*/
        $_SESSION['FBID'] = $fbid;           
        $_SESSION['FULLNAME'] = $fbfullname;
        $_SESSION['EMAIL'] =  $fbemail;
        $_SESSION['GENDER'] =  $fbgender;
        $_SESSION['BIRTHDAY'] =  $fbbirthday;

    Geburtstag funktioniert bei mir nicht so, aber ich glaube, dass es dafür mehrere Gründe gibt, z. B. sind zusätzliche Berechtigungen erforderlich, ich habe meine versteckt usw. Hoffentlich hilft das.

3voto

AjayR Punkte 4113

Der Code für die Login-Schaltfläche sollte wie folgt aussehen

<fb:login-button autologoutlink="true" perms="email,user_birthday,status_update,publish_stream"></fb:login-button>

Um die Nutzerdaten zu lesen, müssen Sie die PHP-Facebook-API verwenden, die kostenlos von Facebook heruntergeladen werden kann.

Der folgende Link gibt Ihnen weitere Informationen.

http://thinkdiff.net/facebook/php-sdk-graph-api-base-facebook-connect-tutorial/

0voto

no.good.at.coding Punkte 19983

Ihre Anwendung muss die user_birthday (ou friends_birthday ) Erlaubnis, um diese zu erhalten.

Referenz:

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X