wenn ich mich über Java bei meiner access datenbank einloggen will und den usernamen und password eingeben lasse und mit mdb datei vergleiche wird nicht nur das Schülerfenster aufgerufen nach erfolgreichem SchülerAccountLogin sondern das Lehrerfenster wird auch aufgerufen danach bzw. es liegt über dem Schüler fenster...
http://rapidshare.de/files/25980097/4KlassenUndDatenbank.rar.html
da sind alle 4 klasse drin und die mdb datenbank für access!
wobei den fehler findet ihr mit sicherheit auch so, ich leider net...
http://rapidshare.de/files/25980097/4KlassenUndDatenbank.rar.html
da sind alle 4 klasse drin und die mdb datenbank für access!
wobei den fehler findet ihr mit sicherheit auch so, ich leider net...
Code:
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPasswordField;
import javax.swing.JTextField;
import java.awt.Font;
import java.awt.event.*;
import java.sql.*;
import javax.swing.*;
public class login extends JFrame implements ActionListener
{
private JLabel statusMsgLB;
private JLabel statusLB;
private JButton abbrBT;
private JButton okBT;
private JLabel loginLB;
private JPasswordField passeinTF;
private JComboBox statuseinCB;
private JTextField nameTF;
private JLabel accountLB;
private JLabel passwortLB;
private JLabel nameLB;
private AdminZugriff adminPanel;
private LehrerZugriff lehrerPanel;
private SchülerZugriff schülerPanel;
static Connection con;
static Statement sqlAnweisung;
static ResultSet result;
static String sqlzeile;
static String nameeinErgebnis;
static String passwortErgebnis;
static String sqlname;
static String sqlpasswort;
private String name, pass;
public login()
{
super("Datenbank-Login");
setLayout(null);
loginLB = new JLabel("Bitte Loggen Sie sich ein:");
statusMsgLB = new JLabel("Alles OK");
nameLB = new JLabel("Name:");
nameTF = new JTextField();
passwortLB = new JLabel("Passwort:");
passeinTF = new JPasswordField();
accountLB = new JLabel("Account:");
statuseinCB = new JComboBox();
okBT = new JButton("OK");
abbrBT = new JButton("Abbrechen");
statusLB = new JLabel("Status:");
add(nameTF);
add(nameLB);
add(passeinTF);
add(statuseinCB);
add(statusMsgLB);
add(accountLB);
add(passwortLB);
add(loginLB);
add(okBT);
add(statusLB);
add(abbrBT);
loginLB.setBounds(20,20,250,30);
nameTF.setBounds(120,60,100,30);
nameLB.setBounds(20,60,100,30);
passeinTF.setBounds(120,90,100,30);
passwortLB.setBounds(20,90,100,30);
accountLB.setBounds(20,120,100,30);
statuseinCB.setBounds(120,120,100,30);
statusMsgLB.setBounds(120,150,100,30);
statusLB.setBounds(20,150,100,30);
okBT.setBounds(20,210,100,30);
abbrBT.setBounds(120,210,100,30);
loginLB.setFont(new Font("Arial",Font.BOLD, 14));
statuseinCB.addItem("Schüler");
statuseinCB.addItem("Lehrer");
statuseinCB.addItem("Admin");
okBT.addActionListener(this);
abbrBT.addActionListener(this);
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
try
{
connectDB();
}
catch(Exception e)
{
e.printStackTrace();
}
}
public static void connectDB() throws ClassNotFoundException, SQLException
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:login","","");
}
public void actionPerformed(ActionEvent e)
{
nameeinErgebnis = nameTF.getText();
passwortErgebnis = passeinTF.getText();
if (e.getSource().equals(okBT))
{
//---------------------------------- Schüler Account Abrage ---------------------------------------//
if (statuseinCB.getSelectedItem().toString().equals("Schüler"))
{
try
{
sqlname = "Select * from LoginSchueler where Name = '"+nameeinErgebnis+"'";
sqlAnweisung=con.createStatement();
result = sqlAnweisung.executeQuery(sqlname);
if (result.next())
{
name = result.getString("Name");
pass = result.getString("Passwort");
}
result.close();
if (nameeinErgebnis.equals(name) && passwortErgebnis.equals(pass))
{
schülerPanel = new SchülerZugriff();
}
else
{
statusMsgLB.setText("Password/User existiert nicht");
}
}
catch (SQLException a)
{
a.printStackTrace();
}
}
//------------------------------------- Lehrer Account Abfrage ------------------------------------//
if (statuseinCB.getSelectedItem().toString().equals("Lehrer"));
{
try
{
sqlname = "Select * from LoginLehrer where Name = '"+nameeinErgebnis+"'";
sqlAnweisung=con.createStatement();
result = sqlAnweisung.executeQuery(sqlname);
if (result.next())
{
name = result.getString("Name");
pass = result.getString("Passwort");
}
result.close();
if (nameeinErgebnis.equals(name) && passwortErgebnis.equals(pass))
{
lehrerPanel = new LehrerZugriff();
}
else
{
statusMsgLB.setText("Password/User existiert nicht");
}
}
catch (SQLException a)
{
a.printStackTrace();
}
}
//------------------------------------- Admin Account Abfrage -------------------------------------//
if (statuseinCB.getSelectedItem().toString().equals("Admin"));
{
try
{
sqlname = "Select * from LoginAdmin where Name = '"+nameeinErgebnis+"'";
sqlAnweisung=con.createStatement();
result = sqlAnweisung.executeQuery(sqlname);
if (result.next())
{
name = result.getString("Name");
pass = result.getString("Passwort");
}
result.close();
if (nameeinErgebnis.equals(name) && passwortErgebnis.equals(pass))
{
adminPanel = new AdminZugriff();
}
else
{
statusMsgLB.setText("Password/User existiert nicht");
}
}
catch (SQLException a)
{
a.printStackTrace();
}
}
//--------------------------------------- Login Abbrechen ---------------------------------------//
if (e.getSource().equals(abbrBT))
{
try
{ System.exit(0); }
catch (Exception a)
{ a.printStackTrace(); }
}
//---------------------------------- Ende Login Abbrechen ---------------------------------------//
}
}
public static void main(String[] args) //throws ClassNotFoundException, SQLException
{
login loginWindow = new login();
loginWindow.setSize(300,300);
loginWindow.setLocation(300,200);
loginWindow.setResizable(false);
loginWindow.setVisible(true);
}
}