我正在開發一個android應用程序並使用Firebase存儲我的數據。我想查詢Firebase實例以檢查用戶輸入的電子郵件地址是否與Firebase中的某個電子郵件地址相匹配。附加Firebase後端數據。檢索並檢查特定用戶是否輸入了電子郵件地址
我的要求是,我想通過「監護人」循環,這是數據庫實例的直接子和檢查用戶是否輸入的電子郵件相匹配的電子郵件地址中的任何一個兒童。在附圖中,如果用戶輸入的電子郵件與「[email protected]」或另一個匹配,我想要做一些事情。
databaseReference = FirebaseDatabase.getInstance().getReference().child("guardians");
databaseReference.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for(DataSnapshot data: dataSnapshot.getChildren()){
if (**I am unable to figure out how to search through entire guardians child for the email**) {
} else {
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
我無法弄清楚如何在整個監護人孩子搜索,查看電子郵件是否匹配用戶輸入的電子郵件。任何幫助表示讚賞。提前致謝。
非常感謝您的SUG GESTION。我的要求就像我想在用戶嘗試註冊應用程序時一樣,用戶輸入的電子郵件不應與監護人孩子中的任何電子郵件相匹配。 –
我嘗試了你建議的方法。但即使我輸入了監護人子女名單中的電子郵件地址,它也會轉到else塊。是否因爲我缺少用戶ID?我的Firebase結構是數據庫實例 - >監護人--->用戶ID -----> guardianEmail –
我剛跑過這段代碼:'ref.orderByChild(「name」)。equalTo(「name2」)。addListenerForSingleValueEvent (new ValueEventListener(){ public void onDataChange(DataSnapshot dataSnapshot){ System.out.println(dataSnapshot.exists()); }'。當存在匹配的名稱時顯示'true',當存在匹配的名稱時顯示'false'不是的, –