MySQL Register
MySQL Register
A simple plugin that allows your users to /register. Please note that this is not a in-game registration plugin, it is made specifically for those who want a website for their server, and want to make sure their players cannot steal another's IGN.
This plugin uses SQLibrary, and I greatly appreciate PatPeter, who created it. It is included in the JAR, and you don't need to install it as a separate plugin.
Usage: /register [Email] [Password] [Password Confirmation]
Setup: Simply put this plugin in your plugins folder, launch your server, and a default config file should be generated. It will try to connect using the default details, and will print a bunch of errors to console. Stop your server, and follow the below instructions to set up your connection.
The config file:
connection: hostname: localhost #The hostname/IP of the MySQL server, defaults to localhost port: 3306 #The port for the MySQL connection (don't change this if you don't know why you need to,) defaults to 3306 name: minecraft #The database that is contains the table containing usernames, passwords, and emails, defaults to minecraft username: plugin #The username for the connection, defaults to plugin password: password #The password for the connection, defaults to password database: table-name: users #The table name that the data is going to be stored in, defaults to users user-column: username #The name of the column that the username of a player that registers is going to be stored in, defaults to username password-column: password #The name of the column that the password is going to be stored in (needs to be accept at least 32 characters, since the password is hashed in MD5,) defaults to password email-column: email #The name of the column that the email is going to be stored in, defaults to email hashing: md5 #The hashing to be used, options are md5, sha1, or none. Defaults to none, anything that is not md5 or sha1 will also default to none.
Permissions: This plugin uses the default Bukkit Permissions API, which may not work with some plugins. The permissions node that gives access to the register command is
mysqlregister.register
Current Features:
- Simple register format
- Email verification
- Table name customization
- Column name customization
Planned Features:
- Confirmation Email
- Localization (Plans for Russian, Spanish, French)
- Different password encryption settings
GitHub: Follow the project's development over at GitHub
I have update this plugin. Download http://dev.bukkit.org/bukkit-plugins/mysql-register-reloaded/
important as configuring at frist just create the username and password on your sql the plugin should create the tables by itself and user pass email all that must be created by the plugin or it sends error,
Hay Bukkit tell me in the server.log that I inform you about the following entry:
"Plugin `MySQL_Register v0.5' uses the space-character (0x20) in its name `MySQL Register' - this is discouraged"
And can you add Support for this Plugin? http://dev.bukkit.org/bukkit-plugins/craftbukkituptodate/ It´s one line in the plugin.yml! :)
connection: hostname: MYDOMEINNAME.net port: 3306 name: USERNAME_wp1 username: USER_wp1 password: PW database: table-name: wp_users user-column: user_login password-column: user_pass email-column: user_email hashing: md5
im using wordpress
but i have this!
14.06 18:54:51 [Server] WARN at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405) 14.06 18:54:51 [Server] WARN at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) 14.06 18:54:51 [Server] WARN at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) 14.06 18:54:51 [Server] WARN at com.msalihov.plugins.register.Register.onEnable(Register.java:63) 14.06 18:54:51 [Server] WARN at com.msalihov.plugins.register.MySQL.connect(MySQL.java:60) 14.06 18:54:51 [Server] WARN at java.sql.DriverManager.getConnection(Unknown Source) 14.06 18:54:51 [Server] WARN at java.sql.DriverManager.getConnection(Unknown Source) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:305) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:378) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) 14.06 18:54:51 [Server] WARN at java.lang.reflect.Constructor.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:47) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:794) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2168) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.ConnectionImpl.connectWithRetries(ConnectionImpl.java:2239) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:927) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:982) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:987) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1013) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.Util.getInstance(Util.java:382) 14.06 18:54:51 [Server] WARN at com.mysql.jdbc.Util.handleNewInstance(Util.java:407) 14.06 18:54:51 [Server] WARN at java.lang.reflect.Constructor.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) 14.06 18:54:51 [Server] WARN at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) 14.06 18:54:51 [Server] WARN com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up. 14.06 18:54:51 [Server] ERROR Could not connect to database! 14.06 18:54:47 [Server] INFO Connecting to database... 14.06 18:54:47 [Server] INFO MD5 hashing selected! 14.06 18:54:47 [Server] INFO Enabling MySQL_Register v0.5 14.06 18:54:47 [Server] WARN An update to PermissionsEx version 1.22 is available to download from http://dev.bukkit.org/bukkit-plugins/permissionsex/. Please review the changes and update as soon as possible! 14.06 18:54:47 [Server] INFO [Prism]: Beginning prism database purge cycle. Will be performed in batches so we don't tie up the db... 14.06 18:54:47 [Server] INFO [Prism]: Scheduled purge executor beginning new run... 14.06 18:54:47 [Server] INFO [Prism]: WorldEdit found. Associated features enabled.
icant connect to my data base
connection:
hostname: theminecrafthd.net
port: 3306
name: name_wp1
username: name_wp1
password: PW
database:
table-name: wp_users
user-column: user_login
password-column: user_pass
email-column: user_email
hashing: md5
working with WP
Will this plugin ever see an update? This is something very much needed.
Plz update and the config keeps reseting into default settings. :p
Could you add the option to disable the need for an email?
And add an option to set a new password or get a password reset?
hows this work out
01.12 05:27:19 [Server] SEVERE Registration error: could not execute prepared statement! 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:425) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:493) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:240) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:604) 01.12 05:27:19 [Server] SEVERE at org.spigotmc.netty.NettyServerConnection.b(NettyServerConnection.java:131) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.ServerConnection.b(SourceFile:37) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.PlayerConnection.e(PlayerConnection.java:117) 01.12 05:27:19 [Server] SEVERE at org.spigotmc.netty.NettyNetworkManager.b(NettyNetworkManager.java:237) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.Packet3Chat.handle(Packet3Chat.java:47) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.PlayerConnection.a(PlayerConnection.java:838) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.PlayerConnection.chat(PlayerConnection.java:897) 01.12 05:27:19 [Server] SEVERE at net.minecraft.server.v1_6_R3.PlayerConnection.handleCommand(PlayerConnection.java:986) 01.12 05:27:19 [Server] SEVERE at org.bukkit.craftbukkit.v1_6_R3.CraftServer.dispatchCommand(CraftServer.java:532) 01.12 05:27:19 [Server] SEVERE at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:192) 01.12 05:27:19 [Server] SEVERE at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) 01.12 05:27:19 [Server] SEVERE at com.msalihov.plugins.register.Register.onCommand(Register.java:112) 01.12 05:27:19 [Server] SEVERE at com.msalihov.plugins.register.MySQL.query(MySQL.java:129) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.PreparedStatement.execute(PreparedStatement.java:1362) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2111) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2626) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2140) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1986) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3525) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3593) 01.12 05:27:19 [Server] SEVERE at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1073) 01.12 05:27:19 [Server] SEVERE java.sql.SQLException: Field 'user_permissions' doesn't have a default value
Ignore that last message. Seems that the column was called mc-users rather than username so I just altered that.
Fantastic plugin anyway! I was making one for myself and then came across this midway through development. Have already implemented it with my site.
Getting a message that I'm already registered after running the command.
Anything you can make of this stacktrace?
@remcov1
Thank you very much !!!!
@luca2121998
stop your server -> edit -> start :p i has the same problem but when you stop your server can you edit the file
Hi msalihov! First of all... Great Work!!! Now my question: when i edit the config, save it and reload the server the Plugin delete it self and reinstall it! so the config is the default again :( what am i doing wrong ? Im using 1.6.2! Regards Luca2121998
For some reason when i use /register it goes into the database but adds "0"'s to the hash. This means I cannot use the hash using php as it will never match. Is anyone else having this issue? Is there something I am missing? I've tried both sha1 and md5 but it still adds the extra bits.
Working For 1.6.2 ?
Please make email optional.
Question: do you think you could add disabling people needing to give their email as a config option? Thanks in advance, CT
@WeiUberstriker
Same error, my config is good...
I also get incorrect details. Don't tell me they are wrong becuase I use the exact same details for my DB connection on the website, and I have allowed remote MySQL access from the servers IP. Fix please.