我希望能夠複製uid(圖中藍色下劃線)並將其與當前用戶的uid進行比較。而且,只有在同一個uid下沒有數據時才寫入數據庫。這是爲了讓每個用戶只上傳一次數據。此代碼中的Firebase數據庫有什麼問題?
Link to the database screenshot
buttonSubmit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (mDatabaseReference.child("drivers").child(userid).toString() != userid || mDatabaseReference.child("parents").child(userid).toString() != useremail) {
if (!radiobutton1.isChecked() && !radiobutton2.isChecked()) {
Toast.makeText(LoggedinActivity.this, "Please select either Driver or Parent", Toast.LENGTH_LONG).show();
} else if (radiogroup.getCheckedRadioButtonId() == radiobutton1.getId()) {
typestring = "driver";
Users users = new Users(useremail, editText.getText().toString(), typestring);
mDatabaseReference.child("drivers").child(userid).setValue(users);
} else if (radiogroup.getCheckedRadioButtonId() == radiobutton2.getId()) {
typestring = "parent";
Users users = new Users(useremail, editText.getText().toString(), typestring);
mDatabaseReference.child("parents").child(userid).setValue(users);
}
}
else {
Toast.makeText(LoggedinActivity.this, "Information already submitted", Toast.LENGTH_LONG).show();
}
}
});
這段代碼有什麼問題? –
你沒有告訴我們你的問題是什麼 - 這意味着我們無法幫助你。 –
如果當前用戶的uid下已有數據,則不應該添加數據。但是,如果在當前用戶的uid下已經有一個數據,它會替換數據。它不應該這樣做 –