Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Login.java-----------------------------------------------------------------------------------------------
- /**Loggt bestehenden Nutzer ein */
- public void startLogin(){
- ArrayList<String> params_name = new ArrayList<>();
- ArrayList<String> params_value = new ArrayList<>();
- params_name.add("username");
- params_name.add("password");
- params_value.add(Username);
- params_value.add(Passwort);
- //Hier ist der Fehler:
- Webserver_Connection we = new Webserver_Connection();
- we.sendRequest("login.php", params_name, params_value, this);
- //Die Werte werden aus dem Speicher ausgelesen, noch bevor diese in
- //Der Klasse Webserver_Connection gespeichert werden
- SharedPreferences pref = getSharedPreferences("SERVER_RESPONSE", 0);
- String response = pref.getString("Response0", "fail");
- //------------------------------------------------------------
- Log.i("Login", response);
- if(response.equals("error")){
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_login_failed,
- Toast.LENGTH_LONG).show();
- }else if(response.equals("success")){
- laden.dismiss();
- Log.i("Login", "Nutzer eingeloggt");
- Toast.makeText(getApplicationContext(),
- R.string.toast_login_success,
- Toast.LENGTH_LONG).show();
- startActivity(new Intent(this, Eventliste.class));
- }else if(response.equals("fail")){
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_Server_Connection_fail,
- Toast.LENGTH_LONG).show();
- }
- //Wenn Nutzer eingeloggt bleiben will, Daten abspeichern
- writeData();
- // Serverantwort aus dem Speicher löschen
- SharedPreferences.Editor editor = pref.edit();
- editor.clear();
- editor.commit();
- }
- /**Username und Passwort in shared Preferences Abspeichern, um Eingeloggt Bleiben Funktion zu
- * gewährleisten */
- private void writeData() {
- //Wenn der Nutzer eingeloggt bleiben möchte, zudem noch passwort speichern
- editor.putString("Passwort", Passwort);
- if(loggedIn){
- editor.putBoolean("KeepLoggedIn", true);
- }
- editor.putString("Username", Username);
- editor.commit();
- }
- //----------------------------------------------------------------------------------------------------------------------
- //Webserver_connection.java
- package de.friedrich.activities;
- import java.util.ArrayList;
- import android.app.Dialog;
- import android.content.Intent;
- import android.content.SharedPreferences;
- import android.os.Bundle;
- import android.support.v7.app.AppCompatActivity;
- import android.view.View;
- import android.widget.EditText;
- import android.widget.Toast;
- import de.friedrich.eventbewertung.R;
- import de.friedrich.services.Webserver_Connection;
- /** Registriert einen neuen Benutzer */
- public class Register extends AppCompatActivity {
- /** Ladebildschirm */
- Dialog laden;
- /** Daten des Nutzers */
- String Vorname, Nachname, Username, Email, Password, Password_repeat;
- int Age;
- String vollerName;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.register);
- }
- /**
- * Liest die Textfelder aus und speichert die werte in den Passenden
- * Attributen
- */
- public void getData() {
- // Alle Textfelder initialisieren
- EditText etNachName, etVorName, etUsername, etEmail, etPassword, etPassword_repeat, etAlter;
- etVorName = (EditText) findViewById(R.id.etRegisterFirstName);
- etNachName = (EditText) findViewById(R.id.etRegisterLastName);
- etUsername = (EditText) findViewById(R.id.etRegisterUsername);
- etEmail = (EditText) findViewById(R.id.etRegisterMail);
- etPassword = (EditText) findViewById(R.id.etRegisterPassword);
- etPassword_repeat = (EditText) findViewById(R.id.etRegisterPasswordRepeat);
- etAlter = (EditText) findViewById(R.id.etRegisterAge);
- // Werte auslesen und speichern
- Vorname = etVorName.getText().toString();
- Nachname = etNachName.getText().toString();
- Username = etUsername.getText().toString();
- Email = etEmail.getText().toString();
- Password = etPassword.getText().toString();
- Password_repeat = etPassword_repeat.getText().toString();
- Age = Integer.parseInt(etAlter.getText().toString());
- // Volständigen Namen zusammensetzen
- vollerName = Vorname + "%20" + Nachname;
- // Ladebildschirm
- laden = new Dialog(this, android.R.style.Theme_Translucent_NoTitleBar_Fullscreen);
- laden.setContentView(R.layout.ladebildschirm);
- }
- /** Überprüft alle Eingaben auf bestimmte Parameter */
- public boolean checkEntries() {
- /*
- * Alle Abfragen im Überblick: 1. Passwörter nicht gleich 2. Alle Felder
- * ausgefüllt 3. Alter ist offensichtlich falsch 4. Passowrt zu Kurz
- */
- if (!Password.equals(Password_repeat)) {
- Toast.makeText(getApplicationContext(), getString(R.string.toast_different_passwords), Toast.LENGTH_LONG)
- .show();
- return false;
- } else if (Nachname.equals("") || Vorname.equals("") || Username.equals("") || Email.equals("")
- || Password.equals("") || Password_repeat.equals("")) {
- Toast.makeText(getApplicationContext(), getString(R.string.toast_field_empty), Toast.LENGTH_LONG).show();
- return false;
- } else if (Age >= 100 || Age <= 5) {
- Toast.makeText(getApplicationContext(), getString(R.string.toast_age_false), Toast.LENGTH_LONG).show();
- return false;
- } else if (Password.length() < 6) {
- Toast.makeText(getApplicationContext(), getString(R.string.toast_short_password), Toast.LENGTH_LONG).show();
- return false;
- } else {
- return true;
- }
- }
- /** Methode, die beim drücken des "Registrieren"-Buttons ausgefürt wird */
- public void btnRegisterGo(View v) {
- getData();
- if (checkEntries()) {
- laden.show();
- sendRequest();
- }
- }
- /**
- * Übergibt die eingegebenen Daten nach dem Überprüfen an die Klasse
- * {@link Webserver_Connection}, die sich um das weiterleiten an den Server
- * und die Antwort kümmert
- */
- private void sendRequest() {
- /** Parameter für die Übergabe vorbereiten */
- ArrayList<String> params_name = new ArrayList<>();
- ArrayList<String> params_value = new ArrayList<>();
- params_name.add("email");
- params_name.add("username");
- params_name.add("alter");
- params_name.add("password");
- params_name.add("name");
- params_value.add(Email);
- params_value.add(Username);
- params_value.add(Integer.toString(Age));
- params_value.add(Password);
- params_value.add(vollerName);
- /** Antwort des Servers zurückerhalten und auswerten */
- Webserver_Connection connect = new Webserver_Connection();
- // Anfrage an Server senden
- connect.sendRequest("register.php", params_name, params_value, this);
- // Antwort auslesen
- SharedPreferences pref = getSharedPreferences("SERVER_RESPONSE", 0);
- String response = pref.getString("Response0", "fail");
- if (response.equals("existing_user")) {
- // Nutzername bereits vergeben
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_existing_user,
- Toast.LENGTH_LONG).show();
- } else if (response.equals("existing_mail")) {
- // Email bereits registriert
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_existing_email,
- Toast.LENGTH_LONG).show();
- } else if (response.equals("fail")) {
- // Fehler bei der Verbindung
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_Server_Connection_fail,
- Toast.LENGTH_LONG).show();
- } else if (response.equals("success")) {
- // Nutzer erfolgreich registriert
- laden.dismiss();
- Toast.makeText(getApplicationContext(),
- R.string.toast_registration_successfull,
- Toast.LENGTH_LONG).show();
- startActivity(new Intent(getApplicationContext(), Profil.class));
- }
- // Serverantwort aus dem Speicher löschen
- SharedPreferences.Editor editor = pref.edit();
- editor.clear();
- editor.commit();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement