1.12.2 Cacher les identifiants SQL au client ?



  • Toujours une erreur avec les deux. Elle semble juste un peu différente sur la fin

    [23:03:13] [Server thread/INFO] [STDOUT]: [fr.minewarfare.SQLDatabase:getValue:42]: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Cobra45', siblings=[], style=Style{hasParent=true, color=null, bold=null, itali' at line 1
    
    
        @Override
        public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException {
            if(sender instanceof EntityPlayer) {
                SQLDatabase.getValue("users", "grade", "" + ((EntityPlayer)sender).getDisplayName(), "pseudo");
            }
        }
    
        @Override
        public void execute(MinecraftServer server, ICommandSender sender, String[] args) throws CommandException {
            if(sender instanceof EntityPlayer) {
                EntityPlayer player = (EntityPlayer)sender;
                SQLDatabase.getValue("users", "grade", "" + player.getDisplayName(), "pseudo");
            }
        }
    

  • Moddeurs confirmés Rédacteurs Administrateurs

    getDisplayName ne renvois pas un string mais un ITextComponent.
    Il faut utiliser player.getGameProfile().getName() pour avoir le nom du joueur en string (et il serait mieux de gérer les données utilisateurs en fonction du UUID, sinon en cas de changement de pseudo tu vas avoir des problèmes).



  • Tout fonctionne, merci.


Log in to reply