N
newperson
Neues Mitglied
- 1
Hallo, mit dem Request habe ich Probleme. Ich habe keine Ahnung warum das nicht funktioniert?? Eine Verbindung zur DB habe ich. Also konkret: Ich kann mich nicht Einloggen. Es wird immer der Toast: "Invalid username or password" aufgerufen.
Mit dem Debugger hab ich es auch schon probiert. Ich finde keinen Fehler. Ich verzweifle schon.
Danke für die Hilfe
die Programmierung:
die PHP-Programmierung:
Config.php
Login.php
Logcat:
05-08 16:56:29.661 9338-9338/com.paier.dbuebung W/System: ClassLoader referenced unknown path: /data/app/com.paier.dbuebung-1/lib/arm
05-08 16:56:29.701 9338-9338/com.paier.dbuebung I/art: override thread count:-j2
05-08 16:56:30.181 9338-9338/com.paier.dbuebung W/System: ClassLoader referenced unknown path: /data/app/com.paier.dbuebung-1/lib/arm
05-08 16:56:30.455 9338-9338/com.paier.dbuebung W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
05-08 16:56:30.653 9338-9384/com.paier.dbuebung I/Adreno-EGL: <qeglDrvAPI_eglInitialize:379>: EGL 1.4 QUALCOMM build: Nondeterministic_AU_msm8974_LA.BF.1.1.3__release_AU (I3fa967cfef)
OpenGL ES Shader Compiler Version: E031.28.00.02
Build Date: 09/29/15 Tue
Local Branch: mybranch14683032
Remote Branch: quic/master
Local Patches: NONE
Reconstruct Branch: NOTHING
05-08 16:56:38.141 9338-9384/com.paier.dbuebung W/OpenGLRenderer: Fail to change FontRenderer cache size, it already initialized
Mit dem Debugger hab ich es auch schon probiert. Ich finde keinen Fehler. Ich verzweifle schon.
Danke für die Hilfe
die Programmierung:
Code:
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.support.v7.app.AlertDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.support.v7.widget.AppCompatButton;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import java.util.HashMap;
import java.util.Map;
public class LoginActivity extends AppCompatActivity implements View.OnClickListener {
private EditText etUsername, etPassword;
private Button bLogin;
private TextView tvRegisterLink;
private boolean loggedIn = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
etUsername = (EditText) findViewById(R.id.etUsername);
etPassword = (EditText) findViewById(R.id.etPassword);
tvRegisterLink = (TextView) findViewById(R.id.tvRegisterLink);
tvRegisterLink.setOnClickListener(this);
bLogin = (Button) findViewById(R.id.bSignIn);
bLogin.setOnClickListener(this);
}
@Override
protected void onResume() {
super.onResume();
SharedPreferences sharedPreferences = getSharedPreferences(Config.SHARED_PREF_NAME, Context.MODE_PRIVATE);
loggedIn = sharedPreferences.getBoolean(Config.LOGGEDIN_SHARED_PREF, false);
//wenn login true ist
if(loggedIn){
Intent intent = new Intent(LoginActivity.this, UserAreaActivity.class);
startActivity(intent);
}
}
private void login(){
final String username = etUsername.getText().toString().trim();
final String password = etPassword.getText().toString().trim();
StringRequest stringRequest = new StringRequest(Request.Method.POST, Config.LOGIN_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
//if success from server
if(response.equalsIgnoreCase(Config.LOGIN_SUCCESS)){
SharedPreferences sharedPreferences = LoginActivity.this.getSharedPreferences(Config.SHARED_PREF_NAME, Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putBoolean(Config.LOGGEDIN_SHARED_PREF, true);
editor.putString(Config.USERNAME_SHARED_PREF, username);
editor.commit();
Intent intent = new Intent(LoginActivity.this, UserAreaActivity.class);
startActivity(intent);
}else{
//if not success from server
Toast.makeText(LoginActivity.this, "Invalid username or password", Toast.LENGTH_LONG).show();
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
//Error
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> params = new HashMap<>();
params.put(Config.KEY_USERNAME, username);
params.put(Config.KEY_PASSWORD, password);
return params;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.tvRegisterLink:
// Intent registerIntent = new Intent(LoginActivity.this, RegisterActivity.class);
// LoginActivity.this.startActivity(registerIntent);
break;
case R.id.bSignIn:
login();
break;
}
}
}
die PHP-Programmierung:
Config.php
Code:
<?php
define("DB_HOST", "localhost");
define("DB_USER", "root");
define("DB_PASSWORD", "123");
define("DB_DATABASE", "dbserver");
$con = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_DATABASE);
if(!$con) {
die("keine Verbindung".mysql_error());
}
echo "Erfolgreich verbunden"
?>
Login.php
Code:
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = $_POST['username'];
$password = $_POST['password'];
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
require_once('loginregister/Config.php');
$result = mysqli_query($con,$sql);
$check = mysqli_fetch_array($result);
if(isset($check)){
echo "success";
}else{
echo "failure";
}
mysqli_close($con);
}
Logcat:
05-08 16:56:29.661 9338-9338/com.paier.dbuebung W/System: ClassLoader referenced unknown path: /data/app/com.paier.dbuebung-1/lib/arm
05-08 16:56:29.701 9338-9338/com.paier.dbuebung I/art: override thread count:-j2
05-08 16:56:30.181 9338-9338/com.paier.dbuebung W/System: ClassLoader referenced unknown path: /data/app/com.paier.dbuebung-1/lib/arm
05-08 16:56:30.455 9338-9338/com.paier.dbuebung W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
05-08 16:56:30.653 9338-9384/com.paier.dbuebung I/Adreno-EGL: <qeglDrvAPI_eglInitialize:379>: EGL 1.4 QUALCOMM build: Nondeterministic_AU_msm8974_LA.BF.1.1.3__release_AU (I3fa967cfef)
OpenGL ES Shader Compiler Version: E031.28.00.02
Build Date: 09/29/15 Tue
Local Branch: mybranch14683032
Remote Branch: quic/master
Local Patches: NONE
Reconstruct Branch: NOTHING
05-08 16:56:38.141 9338-9384/com.paier.dbuebung W/OpenGLRenderer: Fail to change FontRenderer cache size, it already initialized