@Override
public void onClick(View v) {
if(v == buttonRegister){
registerUser();
}
}
private void registerUser() {
?*some code here*/
}
private void register(String name, String email, String password, String phone) {
String urlSuffix = "?name="+name+"&email="+email+"&password="+password+"&phone="+phone;
class RegisterUser extends AsyncTask<String, Void, String> {
ProgressDialog loading;
@Override
protected void onPreExecute() {
super.onPreExecute();
loading = ProgressDialog.show(SignUpActivity.this, "Please Wait",null, true, true);
}
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
}
@Override
protected String doInBackground(String... params) {
String s = params[0];
BufferedReader bufferedReader = null;
try {
URL url = new URL(REGISTER_URL+s);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
bufferedReader = new BufferedReader(new InputStreamReader(con.getInputStream()));
String result;
result = bufferedReader.readLine();
return result;
}catch(Exception e){
return null;
}
}
}
RegisterUser ru = new RegisterUser();
ru.execute(urlSuffix);
}
0
A
回答
1
If you moved from login activity to this screen then you can use:
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
this.finish();
}
Otherwise you can start new activity like :
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
startActivity(new Intent(SignUpActivity.this,LoginActivity.class));
this.finish();
}
0
这完全取决于你的REST API,什么它返回,如果你可以从发布API JSON结果可以有很大帮助。 如果它返回象“电子邮件已存在”消息,那么你可以检查邮件中存在的字符串,并做相应
更改您的onPostExecute方法:
@Override
protected void onPostExecute(String s) {
super.onPostExecute(s);
loading.dismiss();
Toast.makeText(getApplicationContext(), s, Toast.LENGTH_SHORT).show();
if(s.has("email already exists")){
//Show some error
}else if(s.has("Registration successfull"))
startActivity(new Intent(SignUpActivity.this,LoginActivity.class));
this.finish();
}
0
if($_SERVER['REQUEST_METHOD']=='GET'){
$name = $_GET['name'];
$password = $_GET['password'];
$email = $_GET['email'];
$phone = $_GET['phone'];
if($name == '' || $password == '' || $email == '' || $phone == '')
{
echo 'please fill all values';
}
else{
$check =$db->query("SELECT * FROM register WHERE email='".$_GET['email']."'";
$row=$check->num_rows;
if($row > 0)
{
echo 'email already exist';
}
else
{
$insert = $db->query("INSERT INTO register(`name`,`password`,`email`,`phone`) VALUES('".$_GET['name']."','".$_GET['password']."','".$_GET['email']."','".$_GET['phone']."')";
if($insert)
{
echo 'successfully registered';
} 其他 { echo'oops!请再试一次!'; } } } } else { echo“Error”; }
0
您应该使用单个活动与LoginFragment
和RegisterFragment
。 如果用户从LoginFragment登录,那么他可以直接转到新的活动。 如果用户选择Register
,那么您需要在堆栈上添加新的碎片并查看他是否完成注册。如果用户完成注册,则可以弹出backstack
,然后登录LoginPage
。
只是为了登录和Registraion我不会建议使用两个不同的活动时,您可以使用1 Activity
和2 Fragment.
相关问题
- 1. Django注册 - 成功登录后从登录/注册重定向
- 2. 返回注册页面登录后
- 3. 导航登录/注册php堆栈
- 4. 如何在成功的Google/Facebook登录后导航到相同的页面?
- 5. 如何在laravel 5.4.12中成功注册后自动登录?
- 6. 注册完成后返回登录页面
- 7. 设计注册成功,登录失败
- 8. 登录成功后导航到另一个视图
- 9. 成功登录后用Spring Security导航到其他GWT模块
- 10. 如何使用rails设计成功注册成功注册到特定页面?
- 11. asp.net身份登录页面登录后将访问注册后,然后返回登录页
- 12. 如何隐藏登录和注册页面中的导航栏反应?
- 13. 使用swift2从登录/注册ViewController导航到SWRevealViewController的sw_front ViewController
- 14. 在plone站点成功注册后立即登录
- 15. 成功注册后登录用户无代码复制
- 16. 登录并注册主页
- 17. 注册后自动登录
- 18. 注册后自动登录
- 19. 注册后自动登录
- 20. 成功登录后不断重定向到登录页面
- 21. Magento成功登录后重定向到登录页面
- 22. ASP.Net成功登录成功,然后重定向到登录页面
- 23. 如何登录并注册到wordpress页面的页面
- 24. 如何成功登录后重定向并注册在Flask-Security中?和错误
- 25. 如何在登录或注销CakePHP 3后更改导航栏功能?
- 26. Asp.Net Forms成功登录后再次登录登录页面
- 27. 登录后如何导航网站
- 28. 成功登录后如何重定向到页面?
- 29. 瓶颈成功登录后如何重定向到上一页
- 30. FB登录:不知道如何得到回应后,成功登录
我需要用户有其他scucessfully注册后,如果用户显示一些错误 – user000