2017-06-12 3 views
0

Jetzt verwende ich PHP Parse SDK und ich versuche, alle Benutzerinformationen zu erhalten.PHP Parse kann keine Benutzer-E-Mails erhalten

$query = ParseUser::query(); 
    $objArray = $query->find(); 
    $data = array(); 
    print_r($objArray); 
    foreach ($objArray as $obj) { 
    $one['id'] = $obj->getObjectId(); 
    $one['displayName'] = $obj->displayName; 
    $one['email'] = $obj->email; 
    $data[]=$one; 
    } 

und das ist print_r Ergebnis

Array ([0] => Parse\ParseUser Object ([_sessionToken:protected] => [serverData:protected] => Array ([readreceipt] => YES [pushnotification] => YES [usernameFix] => jodydunn [displayName_lower] => jody dunn [displayName] => jody dunn [firstLaunch] => Yes [username] => [email protected] [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 23404642 [verifiedAccount] => 1) [operationSet:protected] => Array () [estimatedData:Parse\ParseObject:private] => Array ([readreceipt] => YES [pushnotification] => YES [usernameFix] => jodydunn [displayName_lower] => jody dunn [displayName] => jody dunn [firstLaunch] => Yes [username] => [email protected] [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 23404642 [verifiedAccount] => 1) [dataAvailability:Parse\ParseObject:private] => Array ([readreceipt] => 1 [pushnotification] => 1 [usernameFix] => 1 [displayName_lower] => 1 [displayName] => 1 [firstLaunch] => 1 [username] => 1 [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 1 [verifiedAccount] => 1) [className:Parse\ParseObject:private] => _User [objectId:Parse\ParseObject:private] => 97EIKQVlUW [createdAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-30 14:26:15.568000 [timezone_type] => 2 [timezone] => Z) [updatedAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-06-12 23:34:47.234000 [timezone_type] => 2 [timezone] => Z) [hasBeenFetched:Parse\ParseObject:private] => 1) [1] => Parse\ParseUser Object ([_sessionToken:protected] => [serverData:protected] => Array ([username] => [email protected] [displayName_lower] => tiago marques [usernameFix] => tiagomarques [displayName] => Tiago Marques [firstLaunch] => Yes [readreceipt] => YES [pushnotification] => YES [facebookId] => 1722892281374124 [qbUserID] => 23295999) [operationSet:protected] => Array () [estimatedData:Parse\ParseObject:private] => Array ([username] => [email protected] [displayName_lower] => tiago marques [usernameFix] => tiagomarques [displayName] => Tiago Marques [firstLaunch] => Yes [readreceipt] => YES [pushnotification] => YES [facebookId] => 1722892281374124 [qbUserID] => 23295999) [dataAvailability:Parse\ParseObject:private] => Array ([username] => 1 [displayName_lower] => 1 [usernameFix] => 1 [displayName] => 1 [firstLaunch] => 1 [readreceipt] => 1 [pushnotification] => 1 [facebookId] => 1 [qbUserID] => 1) [className:Parse\ParseObject:private] => _User [objectId:Parse\ParseObject:private] => nOsEiFmpLu [createdAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-27 16:11:18.737000 [timezone_type] => 2 [timezone] => Z) [updatedAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-27 16:11:37.865000 [timezone_type] => 2 [timezone] => Z) [hasBeenFetched:Parse\ParseObject:private] => 1) [2] => Parse\ParseUser Object ([_sessionToken:protected] => [serverData:protected] => Array ([displayName_lower] => jody dunn [firstLaunch] => Yes [displayName] => jody dunn [usernameFix] => jodydunn [username] => [email protected] [readreceipt] => YES [pushnotification] => YES [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 23158732 [verifiedAccount] => 1) [operationSet:protected] => Array () [estimatedData:Parse\ParseObject:private] => Array ([displayName_lower] => jody dunn [firstLaunch] => Yes [displayName] => jody dunn [usernameFix] => jodydunn [username] => [email protected] [readreceipt] => YES [pushnotification] => YES [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 23158732 [verifiedAccount] => 1) [dataAvailability:Parse\ParseObject:private] => Array ([displayName_lower] => 1 [firstLaunch] => 1 [displayName] => 1 [usernameFix] => 1 [username] => 1 [readreceipt] => 1 [pushnotification] => 1 [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 1 [verifiedAccount] => 1) [className:Parse\ParseObject:private] => _User [objectId:Parse\ParseObject:private] => VtvElOtqFQ [createdAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-24 11:47:08.461000 [timezone_type] => 2 [timezone] => Z) [updatedAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-06-12 23:34:24.014000 [timezone_type] => 2 [timezone] => Z) [hasBeenFetched:Parse\ParseObject:private] => 1) [3] => Parse\ParseUser Object ([_sessionToken:protected] => [serverData:protected] => Array ([displayName] => Jody dunn [pushnotification] => YES [readreceipt] => YES [username] => [email protected] [firstLaunch] => Yes [usernameFix] => jodydunn [displayName_lower] => jody dunn [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 22885014) [operationSet:protected] => Array () [estimatedData:Parse\ParseObject:private] => Array ([displayName] => Jody dunn [pushnotification] => YES [readreceipt] => YES [username] => [email protected] [firstLaunch] => Yes [usernameFix] => jodydunn [displayName_lower] => jody dunn [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 22885014) [dataAvailability:Parse\ParseObject:private] => Array ([displayName] => 1 [pushnotification] => 1 [readreceipt] => 1 [username] => 1 [firstLaunch] => 1 [usernameFix] => 1 [displayName_lower] => 1 [userAlreadyAutoFollowedFacebookFriends] => 1 [qbUserID] => 1) [className:Parse\ParseObject:private] => _User [objectId:Parse\ParseObject:private] => oBBU5lwrAk [createdAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-17 23:09:42.008000 [timezone_type] => 2 [timezone] => Z) [updatedAt:Parse\ParseObject:private] => DateTime Object ([date] => 2017-01-17 23:09:46.529000 [timezone_type] => 2 [timezone] => Z) [hasBeenFetched:Parse\ParseObject:private] => 1) 

So kann ich andere Bereiche, aber es gibt nicht vorhandene E-Mail.

Wie kann ich E-Mails erhalten? Lass es mich wissen, bitte.

+0

Was ist die Ausgabe von 'print_r ($ objArray);'? – Enstage

+0

weiß nicht versuchen '$ eins ['email'] = $ obj-> get ('email');', Quelle des Wahnsinns https://hotexamples.com/examples/parse/ParseUser/query/php-parseuser-query- method-examples.html –

+0

danke @Enstag Ich habe print_r Ergebnis zu meinem Beitrag hinzugefügt – Alex

Antwort

0

Die E-Mail Eigenschaft Sie suchen, ist eine optional Eigenschaft in einer Instanz von ParseUser. Sie sollten nach seiner Existenz suchen, bevor Sie davon ausgehen, dass es da ist.

Wenn man sich nahm, wenn Sie die erforderlichen Felder nur melden sind Passwort und Benutzername. Wenn eine E-Mail nicht im Voraus bereitgestellt und eingerichtet wurde (z. B. über $user->setEmail('...')), wird danach kein Zugriff mehr möglich sein.

Mit diesem wird gesagt, die Benutzername Eigentum ist Ihre nächste beste Wette auf eine gültige E-Mail für einen Benutzer, vorausgesetzt, sie haben sich mit einer E-Mail als Benutzername, die ist. Darüber hinaus können Sie von Ihren Benutzern immer verlangen, dass sie eine E-Mail wie bei der Anmeldung senden oder dass der Benutzername eine E-Mail ist (was ziemlich gut funktioniert!).

+0

Danke @montymxb, Wie du schon sagtest, habe ich nicht getan (wie $ user-> setEmail ('...')) vorher. In der Tabelle "Parse Dashboard-Benutzer" gibt es jedoch ein Feld "E-Mail". Ich denke also, ich kann den Feldwert "E-Mail" erhalten. – Alex

+0

Ja, Sie haben Recht, für die Klasse "_User" gibt es ein registriertes Feld ** email **. Wenn jedoch keine E-Mail eingestellt wurde, lautet der Standardwert "null". Sie können immer überprüfen, ob ein 'ParseObject' Daten für ein bestimmtes Feld enthält, indem Sie' $ obj-> has ('field-name'); '. – montymxb

0

Das E-Mail-Feld existiert, Sie brauchen nur den MasterKey, um es zu bekommen. Verwenden Sie $query->find(true); und geben Sie den MasterKey mit ParseClient::initialize und Sie sollten die E-Mail erhalten.