Som besökare på Hamsterpaj samtycker du till användandet av s.k. cookies för att förbättra din upplevelse hos oss. Jag förstår, ta bort denna ruta!
Annons

[tutorial] minecraft php login

Skapad av TheWouixSE, 2013-08-11 23:18 i Webbutveckling & Programmering

3 003
6 inlägg
0 poäng
TheWouixSE
Visningsbild
P 24 Hjälte 4 inlägg
0
Hej! Detta är en kod som jag skrev åt min egen hemsida där jag vill att mina server medlemmar ska kunna logga in på. Men jag vill inte hantera allas lösenord och vill kunna göra så bara en del kunde logga in på sidan. Så detta är scriptet jag skrev som jag gärna vill dela med mig. Det är byggt på minecraft login api'n och fungerar som vilket login system som heldst. Här är koden:
Ett stycke php-kod:
<?php

// Funktionen som hanterar login connectionen
class mclogin {
public $minecraftUsername = '', $sessionID = '';
public function login($username, $password, $version=13){
$minecraftSocket = fopen(" http://login.minecraft.net/?user=$username&password;=$password&version;=$version", "rb");

$minecraftOutput = '';
while (!feof($minecraftSocket)) {
$minecraftOutput .= fgets($minecraftSocket, 128);
}
fclose($minecraftSocket);

if(strpos($minecraftOutput, 'Bad login') === false){
$minecraftValues = explode(':', $minecraftOutput);

if(count($minecraftValues) > 0){
$this->minecraftUsername = $minecraftValues[2];
$this->sessionID = $minecraftValues[3];
return true;
} else {
return false;
}
} else {
return false;
}
}
}

session_start();
$minecraftlogin = new mclogin();

// Array för att ha tillåtna spelnamn
$members = array('McNamn1',
'McNamn2',
'McMamn3');

// Om du klickar på knappen
$username = in_array($_SESSION['username'],$members);
if (isset($_POST['username'],$_POST['password']) && in_array($_POST['username'],$members)) {
$user = htmlentities($_POST['username']);
$pass = htmlentities($_POST['password']);

// kallar på funktionen ovan
if ($minecraftlogin->login($user,$pass)) {
$_SESSION['username'] = $user;
$_SESSION['password'] = $pass;
echo 'Logged in!';
session_destroy(); // Finns ingen logout knapp så denna gör så att du sessionen
//förstörs när du har loggat in
} else {
Die("Wrong credentials!");
}
} else {
if (isset($_POST['username']) && !in_array($_POST['username'],$members))
Die("Username is not an active account!");
?>
<form acti echo $_SERVER['PHP_SELF'] ?>" method="post">
<label for="username">Username: </label>
<input type="text" name="username" /><br />
<label for="password">Password: </label>
<input type="password" name="password" /><br />
<input type="submit" name="login" value="Log In" />
</form>
<?php
}

?>


Vill ni ha en mer advancerad tutorial hur denna är byggd så finns det på engelska gjord av mig här: http://www.hackforums.net/showthread.php?tid=3680678

Är reklamen ivägen? Logga in eller registrera dig så försvinner den!

araschic
Visningsbild
Hjälte 3 inlägg
0
Svar till TheWouixSE [Gå till post]:
Spelar inte minecraft men gillar ändå att du delar snippet :P,




Tillägg av araschic 2013-08-12 04:53

Tillägg, såg att du även länkade till HF :D haha lool old times

araschic.myshowroom.se

TheWouixSE
Visningsbild
P 24 Hjälte 4 inlägg
Trådskapare
0

Svar till araschic [Gå till post]:
Anledningen till att jag länkade till hackforums var att jag redan hade skrivit en mer detaljerad tutorial där och tyckte det var onödigt att skriva om allt på svenska. :)

araschic
Visningsbild
Hjälte 3 inlägg
0

Svar till TheWouixSE [Gå till post]:
aa, men såg att du inte hade högt post count , eller var l33t eler dylikt (;.
Hängde på hf förut men tröttnade :P

araschic.myshowroom.se

siixten
Visningsbild
Hjälte 21 inlägg
0
Det finns flera säkerhetshål. Sett den här koden förr, troligen inte du som skrivit den.

Forum image http://i.qkme.me/3p4xcv.jpg
TheWouixSE
Visningsbild
P 24 Hjälte 4 inlägg
Trådskapare
0

Svar till siixten [Gå till post]:
Finns säkert koder som liknar min kod men just denna har jag skrivit. Jag har då letat efter delar och sätt att få min kod att funka, men jag har aldrig laddat ner en kod och påstått att jag har skrivit den.


// Hampus

Forum » Datorer & IT » Webbutveckling & Programmering » [tutorial] minecraft php login

Ansvariga ordningsvakter:

Användare som läser i den här tråden just nu

1 utloggad

Skriv ett nytt inlägg

Hej! Innan du skriver om ett potentiellt problem så vill vi påminna dig om att du faktiskt inte är ensam. Du är inte onormal och världen kommer inte att gå under, vi lovar! Så slappna av och gilla livet i några minuter - känns det fortfarande hemskt? Skriv gärna ner dina tankar och frågor, vi älskar att hjälpa just dig!

Den här tråden är äldre än Rojks drömtjej!

Det senaste inlägget i den här tråden skrevs för över tre månader sedan. Är du säker på att du vill återuppliva diskussionen? Har du något vettigt att tillföra eller passar din fråga i en ny tråd? Onödiga återupplivningar kommer att låsas så tänk efter en extra gång!

Hjälp

Det här är en hjälpruta

Här får du korta tips och förklaringar om forumet. Välj kapitel i rullningslisten här ovanför.

Rutan uppdateras automagiskt

När du använder funktioner i forumet så visas bra tips här.


Annons
Annons
Annons
Annons