Laden...

Forenbeiträge von Crysas Ingesamt 4 Beiträge

18.01.2016 - 21:27 Uhr

Das bringt mich leider nicht wirklich weiter.. ich weiß einfach nicht wieso er zu false springt obwohl das Passwort und Username richtig sind.

15.01.2016 - 23:35 Uhr

Hallo zusammen,
ich habe folgendes Problem.

Ich habe mir in c# ein Webhandler für Asp.net erstellt, dieser greift auf die Datenbank zu und fragt Usernamen und Passwort ab. wenn die Daten korrekt sind sollte er eigentlich "FINE" zurück geben und bei falschen Zugangsdaten "ERROR_BAD".
Leider zeigt er mir aber nur "ERROR_BAD" an, auch wenn die Daten korrekt sind

<%@ WebHandler Language="C#" Class="Handler" %>

using System;
using System.Web;
using System.Data;
using System.Configuration;
using MySql.Data.MySqlClient;


public class Handler : IHttpHandler {

    public bool tryMe(string username, string password)
    {
        
        MySqlConnection con = new MySqlConnection("host=localhost;user=root;password=CHANGED;database=gaming;");
        MySqlCommand cmd = new MySqlCommand("SELECT * FROM users WHERE username = '" + username + "' AND password = '" + password + "';");
        cmd.Connection = con;
        con.Open();
        MySqlDataReader reader = cmd.ExecuteReader();
        if (reader.Read() != false)
        {
            if (reader.IsDBNull(0) == true)
            {
                cmd.Connection.Close();
                reader.Dispose();
                cmd.Dispose();
                return false;
            }
            else
            {
                cmd.Connection.Close();
                reader.Dispose();
                cmd.Dispose();
                return true;
            }
        }
        else
        {
            return false;
        }
    }
    public static string Base64Encode(string plainText)
    {
        var plainTextBytes = System.Text.Encoding.UTF8.GetBytes(plainText);
        return System.Convert.ToBase64String(plainTextBytes);
        
    }

    public static string Base64Decode(string base64EncodedData)
    {
        var base64EncodedBytes = System.Convert.FromBase64String(base64EncodedData);
        return System.Text.Encoding.UTF8.GetString(base64EncodedBytes);
    }

    public void ProcessRequest (HttpContext context) {
        HttpResponse r = context.Response;
        context.Response.ContentType = "text/plain";
        context.Response.Charset = "UTF-8";
        

       
        string username = context.Request.Form["username"]; //Request.Form wird benötigt da das ganze später eine Abfrage für ein Java Launcher wird.
        string password = context.Request.Form["password"];
    

        if (tryMe(username, password) == true)
        {
            r.Write("FINE");
        }
        else
        {
            r.Write("ERROR_BAD");
        }
    }
 
    public bool IsReusable {
        get {
            return false;
        }
    }

} 

Ich hoffe ihr wisst rat.
Mit freundlichen Gruß
Crysas

07.05.2013 - 01:18 Uhr

Hey Community 😉 ich stehe derzeit vor einen problem undzwar sagt er mir : > Fehlermeldung:

NullReferenceException: Der Objektverweis wurde nicht auf eine Objektinstanz festgelegt.
bei RoomUser.MoveTo(Int32 pX, Int32 pY, Boolean pOverride) in C:\Users\Crysas\Desktop\Sources2013\Projekt\RoomUser.cs:Zeile 403.

code:

internal void MoveTo(int pX, int pY, bool pOverride)
        {
            
            if (this.GetRoom().GetGameMap().SquareHasUsers(pX, pY ) || pOverride)
            {
                this.Unidle();
                if (this.TeleportEnabled)
                {
                    this.GetRoom().SendMessage (this.GetRoom().GetRoomItemHandler().UpdateUserOnRoller (this, new Point(pX, pY), 0, this.GetRoom().GetGameMap().SqAbsoluteHeight(this.GoalX, this.GoalY)));
                    this.GetRoom().GetRoomUserManager().UpdateUserStatus(this, false);
                }
                else
                {
                    this.IsWalking = true;
                    this.GoalX = pX;
                    this.GoalY = pY;
                    
                    this.AllowOverride = true;
                   
                    this.throwBallAtGoal = false;
                    
                }
            }
        }

weiß jemand rat?

05.04.2012 - 16:38 Uhr

Hey ich habe eine Frage. undzwar wollt ich ein lizens system machen also habe ich eine text datei gemacht die so aussieht: benutzername=license
.. request abfrage habe ich auch gemacht. aber nun sagt er mir:
Die Eingabe ist keine gültige Base-64-Zeichenfolge, da sie ein Nicht-Base-64-Zeichen, mehr als zwei Leerstellen oder in
den Leerstellen ein Zeichen enthält, das keine Leerstelle ist. ?! wie kriege ich ein Base64 Decoder hin?! 😮 bitte nicht mit Fachwörtern Rum schmeißen ich bin absoluter anfänger 😛

hier mal das system:

  public static string Decode(string str)
        {
            byte[] decbuff = Convert.FromBase64String(str);
            return System.Text.Encoding.UTF8.GetString(decbuff);
        }

if (Environment.GetConfig().data["license.key"].Length == 0)

                {
                    throw new Exception("# Du hast die Lizens Noch Nicht Konfiguriert !");
                }

                string[] weblic = new string[6];
                weblic[0] = new System.Net.WebClient().DownloadString(Decode("http://localhost/license.key.txt")); // hosted File with licenses
                weblic[3] = Environment.GetConfig().data["license.key"];
                weblic[2] = Environment.GetConfig().data["license.name"];


                if (weblic[0].Contains(weblic[3] + "=" + weblic[2]))
                {
                    Console.WriteLine("Lizens Korrekt...");
                }
                else
                {
                    Console.WriteLine(" Lizens Key Falsch Bitte Wende dich an den Administrator");
                    System.Threading.Thread.Sleep(5000); //Wait 5 seconds
                   Environment.Destroy();
                }