איך אני מוסיף AUTOREGISTAR לשרת V83 הדרך היחידה זה אתר
מצאתי ל גרסא 62 אבל לא 83 אין אותם דברים בשביל זה
|
|
אני מציע לך להשאיר הרשמה רק דרך האתר...
שניה.
אתה מנסה לפתוח שרת על גרסת 83...
אתה רוצה לעשות הרשמה אוטומאטית.
אתה זה הבנתי.
1. עשית עריכות?
2. באיזה ריפאק אתה משתמש?
תפרט יותר להבא
בתיקייה client תוסיף קובץ חדש בשם AutoRegister.java ובתוכו תרשום:
כנס ל net.login.handler.LoginPasswordHandler.javaקוד PHP:public class AutoRegister {
private static final Map<String, String> accountList = new HashMap<String, String>();
public static boolean getAccountExists(String login) {
if (accountList.isEmpty()) {
try {
Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("SELECT name, lastknownip FROM accounts");
ResultSet rs = ps.executeQuery();
while (rs.next()) {
accountList.put(rs.getString("name").toLowerCase(), rs.getString("lastknownip"));
}
rs.close();
ps.close();
} catch (Exception e) {
System.out.println("Error loading the account list: " + e + ".");
}
}
return accountList.containsKey(login);
}
public static boolean createAccount(String login, String pwd, String eip) {
boolean success = false;
int countIP = 0;
String eIP = eip.substring(1, eip.lastIndexOf(':'));
for (String ips : accountList.values()) {
if (ips.equals(eIP)) {
countIP++;
}
}
if (5 > countIP) {
try {
Connection con = DatabaseConnection.getConnection();
PreparedStatement ps = con.prepareStatement("INSERT INTO accounts (name, password, email, birthday, macs, lastknownip) VALUES (?, ?, ?, ?, ?, ?)");
ps.setString(1, login);
ps.setString(2, sha1(pwd));
ps.setString(3, "no@email.provided");
ps.setString(4, "0000-00-00");
ps.setString(5, "00-00-00-00-00-00");
ps.setString(6, eIP);
ps.executeUpdate();
ps.close();
success = true;
accountList.put(login.toLowerCase(), eIP);
} catch (Exception e) {
System.out.println("Error creating an account (" + login + " | " + pwd + " | " + eip + ").");
}
}
return success;
}
private static String sha1(String in) {
try {
MessageDigest Digester = MessageDigest.getInstance("SHA-1");
Digester.update(in.getBytes("UTF-8"), 0, in.length());
byte[] sha1Hash = Digester.digest();
return HexTool.toString(sha1Hash).replace(" ", "").toLowerCase();
} catch (NoSuchAlgorithmException ex) {
throw new RuntimeException("Hashing the password failed: ", ex);
} catch (UnsupportedEncodingException e) {
throw new RuntimeException("Encoding the string failed: ", e);
}
}
}
תמצא את זה
ותחליף בזה:קוד PHP:loginok = c.login(login, pwd, ipBan || macBan);
תריץ את ה SQL הזה:קוד PHP:if (AutoRegister.getAccountExists(login.toLowerCase())) {
loginok = c.login(login, pwd, ipBan || macBan);
} else if ((!ipBan || !macBan)) {
if (AutoRegister.createAccount(login, pwd, c.getSession().getRemoteAddress().toString())) {
loginok = c.login(login, pwd, ipBan || macBan);
} else {
loginok = 10;
}
} else {
loginok = 5;
}
וזהו. אל תשכח לקמפל. אם יש בעיות תגיד ואני אעזור לך.קוד PHP:ALTER TABLE `accounts` ADD COLUMN `lastknownip` TINYTEXT NULL;
יש לי אבל מחקתי הכל מהמחשב, אני יתקין אחר כך
לא עובד הפקודה:
C:\Nexon\Maple Blade\src\client\AutoRegister.java:2: cannot find symbol
symbol : class Map
location: class AutoRegister
private static final Map<String, String> accountList = new HashMap<String, String>();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:2: cannot find symbol
symbol : class HashMap
location: class AutoRegister
private static final Map<String, String> accountList = new HashMap<String, String>();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:7: cannot find symbol
symbol : class Connection
location: class AutoRegister
Connection con = DatabaseConnection.getConnection();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:7: cannot find symbol
symbol : variable DatabaseConnection
location: class AutoRegister
Connection con = DatabaseConnection.getConnection();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:8: cannot find symbol
symbol : class PreparedStatement
location: class AutoRegister
PreparedStatement ps = con.prepareStatement("SELECT name, lastknownip FROM accounts");
C:\Nexon\Maple Blade\src\client\AutoRegister.java:9: cannot find symbol
symbol : class ResultSet
location: class AutoRegister
ResultSet rs = ps.executeQuery();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:33: cannot find symbol
symbol : class Connection
location: class AutoRegister
Connection con = DatabaseConnection.getConnection();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:33: cannot find symbol
symbol : variable DatabaseConnection
location: class AutoRegister
Connection con = DatabaseConnection.getConnection();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:34: cannot find symbol
symbol : class PreparedStatement
location: class AutoRegister
PreparedStatement ps = con.prepareStatement("INSERT INTO accounts (name, password, email, birthday, macs, lastknownip) VALUES (?, ?, ?, ?, ?, ?)");
C:\Nexon\Maple Blade\src\client\AutoRegister.java:54: cannot find symbol
symbol : class MessageDigest
location: class AutoRegister
MessageDigest Digester = MessageDigest.getInstance("SHA-1");
C:\Nexon\Maple Blade\src\client\AutoRegister.java:54: cannot find symbol
symbol : variable MessageDigest
location: class AutoRegister
MessageDigest Digester = MessageDigest.getInstance("SHA-1");
C:\Nexon\Maple Blade\src\client\AutoRegister.java:57: cannot find symbol
symbol : variable HexTool
location: class AutoRegister
return HexTool.toString(sha1Hash).replace(" ", "").toLowerCase();
C:\Nexon\Maple Blade\src\client\AutoRegister.java:58: cannot find symbol
symbol : class NoSuchAlgorithmException
location: class AutoRegister
} catch (NoSuchAlgorithmException ex) {
C:\Nexon\Maple Blade\src\client\AutoRegister.java:60: cannot find symbol
symbol : class UnsupportedEncodingException
location: class AutoRegister
} catch (UnsupportedEncodingException e) {
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
14 errors
C:\Nexon\nbproject\build-impl.xml:596: The following error occurred while executing this line:
C:\Nexon\nbproject\build-impl.xml:242: Compile failed; see the compiler error output for details.
BUILD FAILED (total time: 2 seconds)
תגיע לקובץ עם השגיאות ותלחץ ctrl + shift + i
אתה בטוח שעשית הכל כמו שצריך?
כותב משהו ב .bat?