16. marts 2005 - 11:08
Der er
25 kommentarer og
1 løsning
Password Check
Hej alle hjerner :DD
Har et lille problem eller to :)
Jeg har et login system som virker sådan nogenlunde, men der er hvert fald to fejl. Når jeg laver en ny bruger, tror jeg den gemmer den 3 gange, og kan ikk se hvorfor...
Og når jeg så skal logge ind , kan jeg ikk finde ud af at få sammenlignet de kodeordet med det brugernavn jeg har ...
Her er lidt af den kode som skal Checke om password er rigtigt ...
////////////////////
public void load() {
//map = (HashMap)obj.read();
list = (ArrayList) obj.read();
}
public void OkButton_actionPerformed(ActionEvent e) {
boolean PassCheck = false;
//MainMenuFrame MMF = new MainMenuFrame();
load();
String u = list.get(0).toString();
String p = list.get(1).toString();
String pp = new String(UserPassTextF.getPassword());
if (u.equalsIgnoreCase(UserNameTextF.toString()) == true) {
System.out.println("Asdad");
if (p.equalsIgnoreCase(pp) == true) PassCheck = true;
//////////
Hele koden kan hentes her :
http://grob.1go.dk/bikecpu3.rarKan godt skrive hele koden her istedet, syntes bare det er sådan lidt besværligt ...
Håber nogle vil hjælpe
//Rosgaard
23. marts 2005 - 20:21
#22
Du få alle klasserne herinde..
package mypackage;
import java.io.Serializable;
public class Bruger implements Serializable
{
private String brugernavn;
private String password;
public Bruger(String user, String psw)
{
brugernavn = user;
password = psw;
}
public boolean tjeck(String psw, String user)
{
if(psw.equalsIgnoreCase(password) && user.equalsIgnoreCase(brugernavn))
{
return true;
}
else return false;
}
}
package mypackage;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.io.Serializable;
import java.util.ArrayList;
public class Brugere implements Serializable
{
private ArrayList brugere;
public Brugere()
{
try {
FileInputStream fis = new FileInputStream("data.dat");
ObjectInputStream ois = new ObjectInputStream(fis);
brugere = (ArrayList)ois.readObject();
ois.close();
}catch(Exception e){
System.out.println(e);
brugere = new ArrayList();
}
}
public void gem()
{
try{
FileOutputStream fos = new FileOutputStream("data.dat");
ObjectOutputStream oos = new ObjectOutputStream(fos);
oos.writeObject(brugere);
oos.close();
}catch(Exception e)
{
}
}
public void nybruger(String navn, String password)
{
brugere.add(new Bruger(navn, password));
gem();
}
public boolean tjeck(String password, String brugernavn)
{
boolean test = false;
for (int i = 0; i < brugere.size(); i++)
{
test = ((Bruger)brugere.get(i)).tjeck(password, brugernavn);
if(test)
{
return test;
}
}
return test;
}
public boolean tjeck(Bruger bruger)
{
for (int i = 0; i < brugere.size(); i++)
{
if(bruger.equals(((Bruger)brugere.get(i))))
return true;
}
return false;
}
}
package mypackage;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JPanel;
import java.awt.Rectangle;
import java.awt.Color;
import javax.swing.JLabel;
import java.awt.Font;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class GUI extends JFrame
{
private JPanel jPanel1 = new JPanel();
private JLabel jLabel1 = new JLabel();
private JPanel jPanel2 = new JPanel();
private JLabel jLabel2 = new JLabel();
private JLabel jLabel3 = new JLabel();
private JLabel jLabel4 = new JLabel();
private JTextField jTextField1 = new JTextField();
private JTextField jTextField2 = new JTextField();
private Brugere brugere = new Brugere();
private JButton jButton1 = new JButton();
private JLabel jLabel5 = new JLabel();
private JButton jButton2 = new JButton();
public GUI()
{
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
jPanel1.setVisible(false);
this.getContentPane().setLayout(null);
this.setSize(new Dimension(400, 300));
this.setTitle("Login");
jPanel1.setBounds(new Rectangle(0, 0, 395, 275));
jPanel1.setForeground(new Color(107, 146, 214));
jPanel1.setBackground(new Color(124, 178, 209));
jPanel1.setLayout(null);
jLabel1.setText("DU ER LOGGET IND I DEN HEMMELIGE ZONE");
jLabel1.setFont(new Font("Tahoma", 1, 16));
jLabel1.setBounds(new Rectangle(15, 110, 365, 20));
jPanel2.setBounds(new Rectangle(0, 0, 395, 275));
jPanel2.setToolTipText("null");
jPanel2.setLayout(null);
jLabel2.setText("Login");
jLabel2.setBounds(new Rectangle(80, 95, 145, 25));
jLabel2.setFont(new Font("Tahoma", 1, 19));
jLabel3.setText("Brugernavn");
jLabel3.setBounds(new Rectangle(80, 135, 150, 15));
jLabel3.setFont(new Font("Tahoma", 1, 15));
jLabel4.setText("Password");
jLabel4.setBounds(new Rectangle(95, 160, 90, 15));
jLabel4.setFont(new Font("Tahoma", 1, 15));
jLabel4.setToolTipText("null");
jTextField1.setBounds(new Rectangle(175, 130, 140, 20));
jTextField2.setBounds(new Rectangle(175, 155, 140, 20));
jButton1.setText("Login");
jButton1.setBounds(new Rectangle(245, 190, 70, 30));
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1_actionPerformed(e);
}
});
jLabel5.setBounds(new Rectangle(250, 240, 125, 25));
jButton2.setText("opret brugere");
jButton2.setBounds(new Rectangle(90, 15, 150, 35));
jButton2.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton2_actionPerformed(e);
}
});
jPanel1.add(jLabel1, null);
jPanel2.add(jButton2, null);
jPanel2.add(jLabel5, null);
jPanel2.add(jButton1, null);
jPanel2.add(jTextField2, null);
jPanel2.add(jTextField1, null);
jPanel2.add(jLabel4, null);
jPanel2.add(jLabel3, null);
jPanel2.add(jLabel2, null);
this.getContentPane().add(jPanel2, null);
this.getContentPane().add(jPanel1, null);
}
private void jButton1_actionPerformed(ActionEvent e)
{
boolean test = brugere.tjeck(jTextField2.getText(), jTextField1.getText());
if(test)
{
jPanel2.setVisible(false);
jPanel1.setVisible(true);
}
else
{
jLabel5.setText("Du findes da vist ikke!!");
}
}
private void jButton2_actionPerformed(ActionEvent e)
{
Nybruger s = new Nybruger();
s.setVisible(true);
}
}
package mypackage;
import javax.swing.JFrame;
import java.awt.Dimension;
import javax.swing.JButton;
import java.awt.Rectangle;
import javax.swing.JTextField;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.JLabel;
public class Nybruger extends JFrame
{
private JButton jButton1 = new JButton();
private JTextField jTextField1 = new JTextField();
private JTextField jTextField2 = new JTextField();
private Brugere brugere = new Brugere();
private JLabel jLabel1 = new JLabel();
public Nybruger()
{
try
{
jbInit();
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
this.getContentPane().setLayout(null);
this.setSize(new Dimension(400, 300));
jButton1.setText("Opret");
jButton1.setBounds(new Rectangle(245, 170, 75, 23));
jButton1.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
jButton1_actionPerformed(e);
}
});
jTextField1.setText("brugernavn");
jTextField1.setBounds(new Rectangle(165, 75, 165, 20));
jTextField1.setToolTipText("null");
jTextField2.setText("password");
jTextField2.setBounds(new Rectangle(165, 110, 165, 20));
jLabel1.setBounds(new Rectangle(235, 135, 140, 15));
this.getContentPane().add(jLabel1, null);
this.getContentPane().add(jTextField2, null);
this.getContentPane().add(jTextField1, null);
this.getContentPane().add(jButton1, null);
}
private void jButton1_actionPerformed(ActionEvent e)
{
brugere.nybruger(jTextField1.getText(), jTextField2.getText() );
jLabel1.setText("Bruger oprettet");
}
}
package mypackage;
import java.awt.Frame;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.UIManager;
import java.awt.Dimension;
import java.awt.Toolkit;
public class Start
{
public Start()
{
Frame frame = new GUI();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height)
{
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width)
{
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
frame.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
frame.setVisible(true);
}
/**
*
* @param args
*/
public static void main(String[] args)
{
try
{
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
catch(Exception e)
{
e.printStackTrace();
}
new Start();
}
}