私はuid(写真の下線付き)をコピーして、それを現在のユーザーのuidと比較したいと思っています。そして、同じuidの下にデータがない場合にのみ、データベースに書き込むようにしてください。これは、各ユーザーが1回だけデータをアップロードできるようにするためです。あなたがこのコード行に変更する必要が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の下に既にデータがある場合は、データを置き換えます。どのようなことをするべきではない –