Website-Shop

Dieses Thema im Forum "Programmierung" wurde erstellt von Miningcraft2013, 19. Oktober 2013.

  1. Miningcraft2013
    Offline

    Miningcraft2013

    Registriert seit:
    29. Juli 2013
    Beiträge:
    33
    Hey Leute,
    Ich suche mal wieder etwas ganz spezielles.

    Erstmal meine Lage:

    Ich besitze einen Server mit PvP-Leveln, wenn man 7 Kills macht, steigt man 1 Level auf, sitrbt man 7-Mal, steigt man einen Level ab.
    Die Level werden in einer MySQL-Datenbank gespeichert.
    Nun habe ich eine Website in HTML, CSS und PHP programmiert, wo der Level-Highscore angezeigt wird.
    Dann habe ich einen Anmelde-Button eingefügt, wo man sich mit Username und Passwort anmeldet.
    In dem Interface, wo man nach einer erfolgreichen Anmeldung landet, soll man sich dann auf folgende Weise Items für die Level kaufen können:
    1.) Man wählt ein Item aus.
    2.) Einem werden die Level abgezogen (MySQL-Eintrag)
    3.) PHP generiert einen Code, welcher folgendermaßen aussieht:
    01 - 58392919
    ItemID - Random-Code
    4.) Der Code wird in einer Datenbank abgespeichert und in einer E-Mail an den User gesendet.
    5.) Der User kann nun InGame eingeben: /code <code> Dann bekommt er sein Item und der Code wird aus der Datenbank entfernt.

    Das Problem:

    Wenn man sich einloggt, muss man Username und Passwort angeben. Natürlich könnte man das Passwort auf der MySQL-Tabelle von AuthMe beziehen. Allerdings haben wir schon 70 User und können nicht alle Login-Daten resetten.

    Hätte jemand eine Idee, wie sich das vielleicht über die E-Mail-Adresse regeln ließe?
    Oder ganz anders?

    Ich wäre für jede Antwort dankbar.

    MfG MiningCraft2013
     
    #1
  2. Crafter6432
    Offline

    Crafter6432

    Registriert seit:
    22. Dezember 2011
    Beiträge:
    686
    Benutz einfach den selben Hashalgorithmus wie AuthMe.
     
    #2
  3. winofi
    Offline

    winofi

    Registriert seit:
    17. November 2012
    Beiträge:
    17
    Minecraft:
    winofi
    wie schon einer geschrieben hat könntest du dein login 100% mit authme verschmelzen lassen, vill hilft dir das:
    PHP:
    1. // @return true if password and nickname match
    2. function check_password_db($nickname,$password) {
    3.        // Here u have to include your DB connection and select!
    4.    
    5.    
    6.     $a=mysql_query("SELECT password FROM authme where username = '$nickname'");
    7.     if(mysql_num_rows($a) == 1 ) {
    8.        $password_info=mysql_fetch_array($a);
    9.        $sha_info = explode("$",$password_info[0]);
    10.      } else return false;
    11.     if( $sha_info[1] === "SHA" ) {
    12.                         $salt = $sha_info[2];
    13.                         $sha256_password = hash('sha256', $password);
    14.                         $sha256_password .= $sha_info[2];;
    15.                         if( strcasecmp(trim($sha_info[3]),hash('sha256', $sha256_password) ) == 0 ) return true;
    16.                         else return false;
    17.     }
    18.  
    19. }
    (Quelle: http://dev.bukkit.org/bukkit-plugins/authme-reloaded/pages/web-site-integration/)
     
    #3