hi i'm trying to update some of user's data username and password
my code below checks if email of current user are exists or not if exists i want to update the old informations with new informations, but my code doesn't work ,it adds me a new user instead of updating user data
update.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
progressBar.setVisibility(View.VISIBLE);
updateUser();
}
});
private void updateUser() {
final DatabaseReference mUser = mDatabase.child("users").child("id");
mUser.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot postSnapshot : dataSnapshot.getChildren()) {
User user = postSnapshot.getValue(User.class);
assert user != null;
String emailUser = user.getEmail();
if (email.equals(emailUser)) {
user.setUsername(name.getText().toString());
user.setPassword(newpassword.getText().toString());
user.setImageBase64(imageBase64);
mUser.setValue(user).addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
Toast.makeText(getActivity(), "Votre compte a été modifé!", Toast.LENGTH_LONG).show();
startActivity(new Intent(getActivity(), LoginActivity.class));
}
});
}
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
}