1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
|
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class MainActivity extends Activity
{
String TAG= "MainActivity";
Thread thread;
Connection connexion;
Statement statement;
ResultSet resultat;
// Variable de connexion
//String serverAddress= "192.168.1.25";
String serverAddress= "172.22.18.8";
public String userName= "MaBase";
public String passWord= "Mocopoc0*";
public String dataBaseName= "mabase";
int serverPort= 3306;
String url= new String();
String requete= new String();
// Variables pour l'authentification grâce à la requête
String utilisateur= new String();
String motDePasse= new String();
//variable pour création d'activity
Intent intent;
Intent intent2;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
try
{ Class.forName( "com.mysql.jdbc.Driver" ).newInstance();
Log.i(TAG, "driver JDBC chargé");
}
catch ( ClassNotFoundException e )
{ Log.i(TAG,"Erreur de chargement du driver JDBC"+e.getMessage());
} catch (IllegalAccessException e)
{ Log.i(TAG,"Erreur (2) de chargement du driver JDBC"+e.getMessage());
} catch (InstantiationException e)
{ Log.i(TAG,"Erreur (3) de chargement du driver JDBC"+e.getMessage());
}
Button btnTeste2= (Button)findViewById(R.id.btnTest2);
btnTeste2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent2 = new Intent(MainActivity.this,register.class);
startActivity(intent2);
}
});
Button btnTeste= (Button)findViewById(R.id.btnTest);
btnTeste.setOnClickListener(new View.OnClickListener()
{
@Override
public void onClick(View v)
{
EditText UserName= (EditText)findViewById(R.id.editUserName);
utilisateur= UserName.getText().toString();
EditText editPassword= (EditText)findViewById(R.id.editPassword);
motDePasse= editPassword.getText().toString();
url= "jdbc:mysql://"+serverAddress+String.format(":%d/",serverPort)+dataBaseName;
requete= "SELECT password FROM login WHERE nom='"+utilisateur+"'";
thread= new Thread(runDataBase);
if(thread!=null)
{ thread.start();
Log.i(TAG, "Thread crée "+thread.isAlive());
}
else
{ Log.d(TAG, "Pb de création de Thread Connect");
}
}
});
}
private Runnable runDataBase= new Runnable()
{ public void run()
{ Log.i(TAG, "Connect start");
Log.i(TAG,"url "+url+" "+userName+" "+passWord);
try
{ try
{ connexion = DriverManager.getConnection(url, userName, passWord);
}
catch (java.sql.SQLException e)
{ handler.sendEmptyMessage(-2);
return;
}
// Création de l'objet gérant les requètes
statement= connexion.createStatement();
resultat= statement.executeQuery(requete);
Log.i(TAG, "Requête "+requete);
// Atention les colonnes démarrent à 1
if( resultat.first() )
{ if(resultat.getString(1).equals(motDePasse))
handler.sendEmptyMessage(0);
else
handler.sendEmptyMessage(-1);
}
else
handler.sendEmptyMessage(-1);
connexion.close();
}
catch (java.sql.SQLException e)
{ handler.sendEmptyMessage(-1);
}
}
};
private Handler handler = new Handler()
{
public void handleMessage(android.os.Message msg)
{ switch(msg.what)
{ case 0: Toast.makeText(getBaseContext(), "Utilisateur authentifié", Toast.LENGTH_SHORT).show();
intent = new Intent(MainActivity.this,viewserver.class);
startActivity(intent);
break;
case -1:Toast.makeText(getBaseContext(), "Problème d'authentification", Toast.LENGTH_SHORT).show();
break;
case -2:Toast.makeText(getBaseContext(), "Erreur de connexion", Toast.LENGTH_SHORT).show();
break;
default:Toast.makeText(getBaseContext(), "Erreur inconnue", Toast.LENGTH_SHORT).show();
}
};
};
}
cordialement |
Partager