Hallo.
Ich habe mir gedacht ich baue im Profile das Alter ein.. MySQL Tabelle 'alter' angelegt.
1. Client.java
Bei private String name;' und darunter hinzu: (über realname gesetzt.)
|
Java-Quelltext
|
1
|
private String alter;
|
Hier auch über Realname
|
Java-Quelltext
|
1
2
3
|
public String getAlter() {
return alter;
}
|
Auch hier das selbe, Alter über Realname
|
Java-Quelltext
|
1
2
3
4
5
6
7
|
}
public void setAlter(String alter) {
this.alter = alter;
}
|
Bei 'this.name = rs.getString("name");' in der loadStats()-Methode (auch hier über Realname)
|
Java-Quelltext
|
1
|
alter = rs.getString("alter");
|
2. CommandParser.java
Hier wollte ich euch das Beispiel auch zeigen, da durch wird jedoch dieser Forumsbeitrag immer zerstört.
http://img5.myimg.de/string7113d.jpg
Soweit hat alles geklappt somit ist das Feld ,,Alter'' im Profile
angelegt und kann auch benutzt werden.. In der MySQL Datenbank kann ich
bei Alter was eintragen wird auch im Profile korrekt angezeigt das
Alter..
Nun wollte ich es im /edit intregrieren damit man es nicht über die Datenbank eintragen muss oder ändern muss.
Hier bekomme ich Probleme
Ich habe mich an dieses Beispiel orientiert:
|
Java-Quelltext
|
1
2
3
4
|
Panel panel8 = new Panel();
panel8.addComponent(new Label("Real Name: "));
panel8.addComponent(new TextField(15, client.getRealName()));
popup.addPanel(panel8);
|
und habe daher darüber einfach:
|
Java-Quelltext
|
1
2
3
4
|
Panel panel9 = new Panel();
panel9.addComponent(new Label("Alter: "));
panel9.addComponent(new TextField(15, client.getAlter()));
popup.addPanel(panel9);
|
eingefügt (also auch hier über Realname)
3. EditHandler
|
Java-Quelltext
|
1
|
package handler; import knuddels.Client;import tools.popup.Popup;import knuddels.Server;import tools.KCodeParser; public class EditHandler { public static void handle(String[] tokens, Client client) { String realname = tokens[3].trim(); String stadt = tokens[4].trim(); String land = tokens[5].trim(); String hobbys = tokens[6].trim(); String job = tokens[7].trim(); String motto = tokens[8].trim(); realname = KCodeParser.parse(realname, !client.isModerator(), 0, 10, 20); realname = Server.get().parseSmileys(realname); stadt = KCodeParser.parse(stadt, !client.isModerator(), 0, 10, 20); stadt = Server.get().parseSmileys(stadt); land = KCodeParser.parse(land, !client.isModerator(), 0, 10, 20); land = Server.get().parseSmileys(land); hobbys = KCodeParser.parse(hobbys, !client.isModerator(), 0, 10, 20); hobbys = Server.get().parseSmileys(hobbys); job = KCodeParser.parse(job, !client.isModerator(), 0, 10, 20); job = Server.get().parseSmileys(job); motto = KCodeParser.parse(motto, !client.isModerator(), 0, 10, 20); motto = Server.get().parseSmileys(motto); String errors = ""; if(realname.length() > 50) { errors += String.format("#Deine Angabe unter _'Real Name'_ ist %s Zeichen _zu lang_.", (realname.length()-50)); } if(stadt.length() > 50) { errors += String.format("#Deine Angabe unter _'Stadt'_ ist %s Zeichen _zu lang_.", (stadt.length()-50)); } if(land.length() > 50) { errors += String.format("#Deine Angabe unter _'Land'_ ist %s Zeichen _zu lang_.", (land.length()-50)); } if(hobbys.length() > 80) { errors += String.format("#Deine Angabe unter _'Hobbys'_ ist %s Zeichen _zu lang_.", (realname.length()-80)); } if(job.length() > 50) { errors += String.format("#Deine Angabe unter _'Job'_ ist %s Zeichen _zu lang_.", (job.length()-50)); } if(motto.length() > 400) { errors += String.format("#Deine Angabe unter _'Motto'_ ist %s Zeichen _zu lang_.", (motto.length()-400)); } if(!errors.isEmpty()) { client.send(Popup.create("Problem", "Problem", String.format("#Bei der Änderung deiner Daten sind folgende _Probleme_ aufgetreten:#%s", errors), 400, 250)); return; } client.send(Popup.create("Änderungen übernommen", "Änderungen übernommen", "#Alle Änderungen wurden _gespeichert_.", 400, 250)); client.setRealName(realname); client.setStadt(stadt); client.setLand(land); client.setHobbys(hobbys); client.setJob(job); client.setMotto(motto); }}
|
Habe ich wie folgt abgeändert:
|
Java-Quelltext
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
package handler; import knuddels.Client;import tools.popup.Popup;import knuddels.Server;import tools.KCodeParser; public class EditHandler { public static void handle(String[] tokens, Client client) { String alter = tokens[2].trim();
String realname = tokens[3].trim();
String stadt = tokens[4].trim(); String land = tokens[5].trim(); String hobbys = tokens[6].trim(); String job = tokens[7].trim(); String motto = tokens[8].trim();
alter = KCodeParser.parse(alter, !client.isModerator(),0, 10, 20); alter = Server.get().parseSmileys(alter);
realname = KCodeParser.parse(realname, !client.isModerator(), 0, 10, 20); realname = Server.get().parseSmileys(realname); stadt = KCodeParser.parse(stadt, !client.isModerator(), 0, 10, 20); stadt = Server.get().parseSmileys(stadt); land = KCodeParser.parse(land, !client.isModerator(), 0, 10, 20); land = Server.get().parseSmileys(land); hobbys = KCodeParser.parse(hobbys, !client.isModerator(), 0, 10, 20); hobbys = Server.get().parseSmileys(hobbys); job = KCodeParser.parse(job, !client.isModerator(), 0, 10, 20); job = Server.get().parseSmileys(job); motto = KCodeParser.parse(motto, !client.isModerator(), 0, 10, 20); motto = Server.get().parseSmileys(motto); String errors = "";
if(alter.length() > 50 { errors += String.format("#Deine Angabe unter _Alter_ ist %s Zeichen _zu lang_.", (alter.length()-50)); }
if(realname.length() > 50) { errors += String.format("#Deine Angabe unter _'Real Name'_ ist %s Zeichen _zu lang_.", (realname.length()-50)); } if(stadt.length() > 50) { errors += String.format("#Deine Angabe unter _'Stadt'_ ist %s Zeichen _zu lang_.", (stadt.length()-50)); } if(land.length() > 50) { errors += String.format("#Deine Angabe unter _'Land'_ ist %s Zeichen _zu lang_.", (land.length()-50)); } if(hobbys.length() > 80) { errors += String.format("#Deine Angabe unter _'Hobbys'_ ist %s Zeichen _zu lang_.", (realname.length()-80)); } if(job.length() > 50) { errors += String.format("#Deine Angabe unter _'Job'_ ist %s Zeichen _zu lang_.", (job.length()-50)); } if(motto.length() > 400) { errors += String.format("#Deine Angabe unter _'Motto'_ ist %s Zeichen _zu lang_.", (motto.length()-400)); } if(!errors.isEmpty()) { client.send(Popup.create("Problem", "Problem", String.format("#Bei der Änderung deiner Daten sind folgende _Probleme_ aufgetreten:#%s", errors), 400, 250)); return; } client.send(Popup.create("Änderungen übernommen", "Änderungen übernommen", "#Alle Änderungen wurden _gespeichert_.", 400, 250)); client.setAlter(alter);
client.setRealName(realname);
client.setStadt(stadt); client.setLand(land); client.setHobbys(hobbys); client.setJob(job); client.setMotto(motto); }}
|
So das war alles.
in /edit erscheint auch das Feld ,,Alter'' man kann es auch bearbeiten
und es steht auch das Alter drinne was ich bereits zuvor mir durch die
datenbank gegeben habe, wenn ich aber nun unter /edit irgendwas schreibe
bei Alter oder in einen anderen Feld, und auf Speichern gehe, ist
danach die ganze Whois verrückt, bedeutet Alle Einträge verschieben sich
um ein Feld nach unten.
Dann ist Alter bei Realname, und Realname bei Land und Land bei Stadt etc..
was mache ich falsch?
Danke schonmal vorab, für eure Hilfe!
Euer Coka!