Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Banana-Coding.com - Java Knuddels Emulator. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

1

Samstag, 2. Juni 2012, 23:40

/showcareer - Laufbahn àla Knödels

Für eine Laufbahn àla Knödels.

  • Autor: Localhost
  • Datum: 25. Oktober 2011
Vorschau

Datenbank

Als SQL-Befehl ausführen:

MySQL-Abfrage(n)

1
2
3
4
5
6
CREATE TABLE `career` (
id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
name varchar(25) NOT NULL,
datum varchar(10) NOT NULL,
text varchar(200) NOT NULL
);


CommandParser

If Condition erweitern:
(Siehe Download)

Sollten Fehler auftreten müsst ihr die Pakete noch importieren:

Java-Quelltext

1
2
3
4
5
6
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import tools.database.ConnectionPool;
import tools.database.PoolConnection;


Suche:

Java-Quelltext

1
2
3
Popup popup = new Popup(title, title, whois.toString(), 460, 350);
        Panel panel = new Panel();
        panel.addComponent(new Button("   OK   "));


Darunter:

Java-Quelltext

1
2
3
4
5
6
if (target.getRank() > 0) {
            Button buttonMessage = new Button("Career");
            buttonMessage.setCommand(String.format("/showcareer %s", nickname));
            buttonMessage.disableClose();
            panel.addComponent(buttonMessage);
        }


Hinweise
  • Der Butler hat automatisch das Datum '21.05.1935' als Registrierungsdatum.
  • Wird in der Datenbank kein Datum angegeben, wird in der Laufbahn '?' als Datum angezeigt.

Localhost

showcareer.java (2,05 kB, 24 Downloads)
application/octet-stream

2

Donnerstag, 20. September 2012, 21:19

Nun habe ich ein Problem :S

Bei Netbeans bekomme ich ja vordefiniert :

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package knuddels;

/**
 *
 * @author ASUS
 */
public class showcareer {
    
}


Aber wie füge ich das gedownloadete showcareer nun ein, ohne das er mir immer Fehlermeldungen im Netbeans macht ...
Denn dank dem roten Baklen kann ich es auch nicht kompilieren :(
Die Zehn Gebote sind deshalb nur so kurz und logisch,

da sie ohne Einwirkung von Juristen zustande gekommen ist

3

Donnerstag, 20. September 2012, 21:23

Du musst lediglich die If-Abfrage in der CommandParser.java mit dem Inhalt der Datei erweitern. ;)

4

Donnerstag, 20. September 2012, 21:27

if (target.getRank() > 0) {
Button buttonMessage = new Button("Career");
buttonMessage.setCommand(String.format("/showcareer %s", nickname));
buttonMessage.disableClose();
panel.addComponent(buttonMessage);
}



Habe ich ja bereits drin , welche if-Abfrage fehlt denn hier noch ? ?(
Die Zehn Gebote sind deshalb nur so kurz und logisch,

da sie ohne Einwirkung von Juristen zustande gekommen ist

5

Donnerstag, 20. September 2012, 21:30

Suche:

Java-Quelltext

1
if (cmd.equals("a")) {


Ersetze durch:

Java-Quelltext

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
if (cmd.equals("showcareer")) {
            String nickname = KCodeParser.escape(arg);
           
            if(nickname.isEmpty()) {
                nickname = client.getName();
            }
           
            Client target = Server.get().getClient(nickname);
           
            if (target == null) {
                target = new Client(null);
                target.loadStats(nickname);
 
                if (target.getName() == null) {
                    client.sendButlerMessage(channel.getName(), String.format("Wer ist %s?", nickname));
                    return;
                }
            }
           
            StringBuilder career = new StringBuilder();
            String title = String.format("Laufbahn von %s", target.getName());
            career.append("#°%04°").append(target == Server.get().getButler() ? "21.05.1935" : target.getRegistrationDate()).append("°%34°Registration°%00°");
               
            PoolConnection pcon = ConnectionPool.getConnection();
            PreparedStatement ps = null;
 
            try {
                Connection con = pcon.connect();
                ps = con.prepareStatement("SELECT `datum`, `text` FROM `career` WHERE `name` = ? ORDER BY `id`");
                ps.setString(1, target.getName());
                ResultSet rs = ps.executeQuery();
           
                while(rs.next()) {
                    career.append("#°%04°").append(rs.getString("datum").isEmpty() ? "?" : rs.getString("datum")).append("°%34°").append(rs.getString("text")).append("°%00°");
                }
            } catch (SQLException e) {
                e.printStackTrace();
            } finally {
                if (ps != null) {
                    try {
                        ps.close();
                    } catch (SQLException e) {
                    }
                }
 
                pcon.close();
            }
       
            client.send(Popup.create(title, title, career.toString(), 400, 250));
        }

} elseif (cmd.equals("a")) {


Nächstes mal bitte ein bisschen mehr Eigeninitiative. Hättest du ein wenig nachgedacht, wäre dir das auch eingefallen.

6

Donnerstag, 20. September 2012, 21:44

Ersetzt, aber jetzt meckert mein Netbeans rum :|

Zitat

}
C:\xampp\bananachat\src\knuddels\CommandParser.java:314: error: class, interface, or enum expected
if (target == null) {
C:\xampp\bananachat\src\knuddels\CommandParser.java:316: error: class, interface, or enum expected
} else {
100 errors
C:\xampp\bananachat\banana\nbproject\build-impl.xml:900: The following error occurred while executing this line:
C:\xampp\bananachat\banana\nbproject\build-impl.xml:265: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 3 seconds)


Konnte ja nur 10.000 Zeichen machen , daher habe ich die letzten genommen, um zu zeigen das er nicht Buildet :(


So sieht es bei mir derzeit aus , Download zum anschauen in TXT:
»Plex« hat folgende Datei angehängt:
  • CommandParser.txt (18,88 kB - 7 mal heruntergeladen - zuletzt: 27. März 2013, 19:14)
Die Zehn Gebote sind deshalb nur so kurz und logisch,

da sie ohne Einwirkung von Juristen zustande gekommen ist

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Plex« (20. September 2012, 22:26)


7

Sonntag, 14. Oktober 2012, 06:23

Falls Du immernoch das Problem hast...

Quellcode

1
	} else if (cmd.equals("a")) { 


entferne das "{" vor dem else if, es scheint als hättest Du einfach nur eins zuviel.