PHP přihlášení

Technická podpora k herním serverům Minecraft a Tekkit
Message
Autor
Uživatelský avatar
TopCz
Příspěvky: 667
Věk: 27
Registrován: 15 led 2014, 21:00
Reputation: 11
Kontaktovat uživatele:

PHP přihlášení

#1 Příspěvekod TopCz » 10 úno 2014, 23:15

Server: 93.91.250.127:27264

Zdravím mám dotaz pokouším se udělat přihlášení na web ze hry aby tam hráči měly různé statistiky atd ale nejde my login.php používám tento od zdenda204 viewtopic.php?f=85&t=15274

ale nevím jak mám udělat aby když se hráč přihlásí tam aby ho to přesměrovalo na určitou stránku taky bych potřeboval vědět co mám dát do stránky za podmínku nebo tak něco aby jste tam nedalo dostat bez přihlášení PS: ano jsem Blbec :D neumím to ale učím se rychle :DDDDD......



můj kouzelný script :

Spoiler: zobrazit

Kód: Vybrat vše

<html>
    <head>
        <title>Přihlášení</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <meta name="author" content="zdenda204">
    </head>
<body>
<!--
Author: zdenda204
Name: Přihlašovací skript
-->
<form method='post'>
   <input type="text" name='nick' placeholder="Nick">
   <input type="password" name='heslo' placeholder="Heslo">
   <button type="submit">Přihlásit!</button>
</form>

<?php
///////////////
// NASTAVENI //
///////////////
$db_host         =     "starsky.fakaheda.eu";     // Zde zadej hostitele
$db_uzivatel     =     "140344_mysql_db";          // Zde uživatelské jméno
$db_heslo        =     "CENZURA";          // Zde heslo
$db_databaze     =     "140344_mysql_db";        // Zde jméno databáze
$db_tabulka      =     "authme";        // Zde zadej jméno AuthMe tabulky
$hash            =     "SHA256";           // Zde zadej typ šifrování

///////////////
//  SKRIPT   //
///////////////
if(isset($_SESSION['uzivatel'])) {
   echo "<a href='?odhlasit=true'><button>Odhlásit</button>";
   if(isset($_GET['odhlasit']) && $_GET['odhlasit']==true) session_destroy();
} else {
$mysqli = new mysqli($db_host, $db_uzivatel, $db_heslo, $db_databaze);
if ($mysqli->connect_errno)
{
   echo "Failed to connect to MySQL: " . $mysqli->connect_error;
   exit();
}
if (isset($_POST['nick']) && isset($_POST['heslo']))
{
   if (!empty($_POST['nick']) && !empty($_POST['heslo']))
   {
      //Ochrana a tvorba variablů
            $nick = preg_replace('/\s+/', '', $_POST['nick']);
      $heslo = preg_replace('/\s+/', '', $_POST['heslo']);
      $result = $mysqli->query("SELECT password FROM ".$db_tabulka." WHERE username = '".$nick."'");
      $row = $result->fetch_assoc();
      switch ($hash) {
            case 'MD5':
                $heslicko = hash('md5', $heslo) === $row['password']; break;
            case 'SHA1':
            $heslicko = hash('sha1', $heslo) === $row['password']; break;
            case 'SHA256':
                $userPasswordField = explode('$', $row['password']);
            $heslo = hash('sha256', $heslo);
            $heslo .= $userPasswordField[2];
            $heslo = '$SHA$' . $userPasswordField[2] . '$' . hash('sha256', $heslo);
            $heslicko = $heslo === $row['password'];
                break;
        }
      $ip = $_SERVER['REMOTE_ADDR'];
      
      //Ověření nicku
      $query_nick = mysqli_query($mysqli, "SELECT username FROM ".$db_tabulka." WHERE username = '".$nick."'");
      if ($data_nick = mysqli_fetch_array($query_nick))
      {
         //Ověření hesla
         if ($heslicko)
         {
            $_SESSION['uzivatel'] = $nick;
            //Úspěšné přihlášení
            echo "<div style='color: green;'><strong>Úspěšně přihlášen.</strong></div>";
           }
         else
         {
            //Neúspěšné přihlášení
            echo "<div style='color: red;'><strong>Toto heslo není správné.</strong></div>";
         }
      }
      else
      {
         //Neexistující přezdívka
         echo "<div style='color: red;'><strong>Tato přezdívka nebyla nalezena.</strong></div>";
      }
   }
}
}

//Obnova hesla
if(isset($_GET['action']))
{
   if($_GET['action'] == "newpassword")
   {
      echo "<form method='post'><input type='text' name='udaj' placeholder='Přezdívka'><button type='submit'>Zaslat heslo!</button></form>";
      if(isset($_POST['udaj']))
      {
         if(!empty($_POST['udaj']))
         {
            function random_pwd($length)
            {            
               $rangeMin = pow(36, $length-1);
               $rangeMax = pow(36, $length)-1;
               $base10Rand = mt_rand($rangeMin, $rangeMax);
               $newRand = base_convert($base10Rand, 10, 36);
   
               return $newRand;
            }
            $new_query_email = mysqli_query($mysqli, "SELECT email FROM ".$db_tabulka." WHERE username = '".$_POST['udaj']."'");
            $new_query_data = mysqli_fetch_array($new_query_email);
            $random_pw = random_pwd(10);
            $random_pw_md = md5($random_pw);   
            $message = "Tvoje nove heslo pro jmeno ".$_POST['udaj']." je " . $random_pw;
            ini_set("SMTP","ssl://smtp.gmail.com");
            ini_set("smtp_port","587");
            mail($new_query_data['email'], 'New Password', $message);
            $query = mysqli_query($mysqli, "UPDATE ".$db_tabulka." SET password = '".$random_pw_md."' WHERE username = '".$_POST['udaj']."'");
            echo "Tvé heslo bylo změněno! Zkontroluj svoji e-mailovou schránku.";
            
         }
      }
   }
}
else {echo "<a href='?action=newpassword'>Zapomněl jsem heslo.</a>";}
?>
</body>
</html>


Zde je odkaz na stránku : http://player_panel.ecrafting.eu/login.php
Obrázek

Uživatelský avatar
Cernokneznik
Příspěvky: 855
Věk: 28
Registrován: 17 črc 2012, 20:23
Reputation: 1
Bydliště: Praha
Kontaktovat uživatele:

Re: PHP přihlášení

#2 Příspěvekod Cernokneznik » 09 bře 2014, 01:42

Stačí si najit kde dojde k ověření hesla a tam vložit požadovaný kód.
Elkia.club - A gaming club with it's own vanilla survival Minecraft server!
Obrázek apply here


Zpět na „Minecraft, Tekkit“

Kdo je online

Uživatelé prohlížející si toto fórum: Žádní registrovaní uživatelé a 20 hostů