Yang saya inginkan adalah: untuk memeriksa apakah nilai input pengguna tersedia dalam database. Saya memiliki Edittext di aplikasi saya, pengguna memasuki nomor telepon. Ketika dia mengklik tombol, tombol permintaan untuk melihat dalam database untuk melihat apakah input pengguna cocok dengan catatan nomor telepon dalam database.

Saya belum melakukan apa pun um yang hilang, tetapi saya memiliki tangkapan layar dari struktur basis data saya.

See screenshot

1
Coin Chain 4 April 2021, 17:49

1 menjawab

Jawaban Terbaik

Untuk memeriksa misalnya, jika "+263782876566" sudah ada dalam database, silakan gunakan baris kode berikut:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference officeRef = rootRef.child("Users").child("Office");
Query queryByPhone = officeRef.orderByChild("phone").equalTo("+263782876566");
officeRef.get().addOnCompleteListener(new OnCompleteListener<DataSnapshot>() {
    @Override
    public void onComplete(@NonNull Task<DataSnapshot> task) {
        if (task.isSuccessful()) {
            for (DataSnapshot ds : task.getResult().getChildren()) {
                String type = ds.child("type").getValue(String.class);
                Log.d(TAG, type);
            }
        } else {
            Log.d(TAG, task.getException().getMessage()); //Don't ignore potential errors!
        }
    }
});

Jadi kami menggunakan referensi yang menunjuk pada Users -> Office dan kemudian kami membuat objek kueri untuk benar-benar memeriksa dalam semua anak jika properti "Telepon" memiliki nilai tertentu. Jika kami menemukan beberapa hasil, kami cukup mencatat jenisnya. Dalam contoh khusus Anda, hasilnya dalam logcat akan:

Office member
1
Alex Mamo 5 April 2021, 10:30