英文:
mixed up data in firebase database data
问题
以下是您提供的代码的翻译:
我是firebase和Android编程的新手。在我的应用程序中,我只是保存了fullName、password、phoneNumber、Email、gender和确认密码。所有这些字段都存储在数据库中,但它们混在一起了。
用户
+23407066082195
电子邮件:'0000'
fullName:'+23407066082195'
性别:'男'
密码:'k..gmail.com'
电话号码:'Tim...'
重新输入的密码:'0000'
这是我的第一个活动的代码:
btnSignUp = findViewById(R.id.btnSignUp);
btnSignUp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (!validateEdtName() | !validateEdtEmail() | !validatePhoneNumber() | !validateEdtPassword() | !validateEdtRePassword() | !validateGender()) {
return;
}
progressBar.setVisibility(View.VISIBLE);
selectedGender = findViewById(gender.getCheckedRadioButtonId());
String gender = selectedGender.getText().toString();
String myName = fullName.getEditableText().toString().trim();
String myEmail = email.getEditableText().toString().trim();
String myPassword = password.getEditableText().toString().trim();
String myRetypedPassword = retypedPassword.getEditableText().toString().trim();
String getUserEnteredPhoneNumber = phoneNumber.getEditableText().toString().trim();
String phoneNo = "+" + countryCodePicker.getFullNumber() + getUserEnteredPhoneNumber;
Intent intent = new Intent(SignUp.this, VerifyOTP.class);
intent.putExtra("PhoneNumber", phoneNo);
//intent.putExtra("fullName", fullName);
intent.putExtra("myName", myName);
intent.putExtra("myEmail", myEmail);
intent.putExtra("myPassword", myPassword);
intent.putExtra("myRetypedPassword", myRetypedPassword);
intent.putExtra("gender", gender);
startActivity(intent);
}
});
对于下一个活动:创建了一个用于保存字符串的类,名为UserHelperClass
FirebaseDatabase rootNode = FirebaseDatabase.getInstance();
DatabaseReference reference = rootNode.getReference("Users");
UserHelperClass addNewUser = new UserHelperClass(fullName,phoneNo,password,email,retypedPassword,gender);
reference.child(phoneNo).setValue(addNewUser);
任何建议都将有所帮助。
英文:
I am new to firebase and Android programming in general. In my app I'm simply saving fullName, password, phoneNumber, Email, gender and a confirmed password. All these fields get stored in the database but their mixed up
Users
+23407066082195
email: '0000'
fullName: '+23407066082195'
gender: 'male'
password: 'k..gmail.com'
phoneNo: 'Tim...'
retypedPassword: '0000'
this is my code : for the first activity
btnSignUp = findViewById(R.id.btnSignUp);
btnSignUp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (!validateEdtName() | !validateEdtEmail() | !validatePhoneNumber() | !validateEdtPassword() | !validateEdtRePassword() | !validateGender()) {
return;
}
progressBar.setVisibility(View.VISIBLE);
selectedGender = findViewById(gender.getCheckedRadioButtonId());
String gender = selectedGender.getText().toString();
String myName = fullName.getEditableText().toString().trim();
String myEmail = email.getEditableText().toString().trim();
String myPassword = password.getEditableText().toString().trim();
String myRetypedPassword = retypedPassword.getEditableText().toString().trim();
String getUserEnteredPhoneNumber = phoneNumber.getEditableText().toString().trim();
String phoneNo = "+" + countryCodePicker.getFullNumber() + getUserEnteredPhoneNumber;
Intent intent = new Intent(SignUp.this, VerifyOTP.class);
intent.putExtra("PhoneNumber", phoneNo);
//intent.putExtra("fullName", fullName);
intent.putExtra("myName", myName);
intent.putExtra("myEmail", myEmail);
intent.putExtra("myPassword", myPassword);
intent.putExtra("myRetypedPassword", myRetypedPassword);
intent.putExtra("gender", gender);
startActivity(intent);
for the next activity: created a class to hold the strings which is the UserHelperClass
FirebaseDatabase rootNode = FirebaseDatabase.getInstance();
DatabaseReference reference = rootNode.getReference("Users");
UserHelperClass addNewUser = new UserHelperClass(fullName,phoneNo,password,email,retypedPassword,gender);
reference.child(phoneNo).setValue(addNewUser);
any suggestions will be helpful.
答案1
得分: 0
我分析了你的代码。要么你没有正确初始化你的EditText
(也许它们的ID不正确),要么你没有正确实现UserHelperClass
的构造函数。检查它们两个,你可能会找到bug。
P.S. 我鼓励你查看Parcelable文档。它是用于通过意图分享对象的。
英文:
I analyzed your code. Either you haven't correctly initialized your EditText
s (maybe their ids aren't correct) or you haven't correctly implemented the constructor of UserHelperClass
. Check both of them, you will probably see the bug.
P.S. I would encourage you to check Parcelable documentation. It is for sharing objects via intents.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论