Crisis2010
Активный участник
- Баллы
- 68
- Имя в Minecraft
- Crisis2010
Ребят, может кто помочь в скайп, я уже писал выше проблему.
Skype: crysis172
Skype: crysis172
Следуйте инструкциям в видео ниже, чтобы узнать, как установить наш сайт как веб-приложение на главный экран вашего устройства.
Примечание: Эта функция может быть недоступна в некоторых браузерах.
@Crisis2010, что за CMS?
какой там хеш используется, md5?f9e30a405355b0d98e87e3ea53837945493cbffd51c53d3af60f640cd179ddf533eac206a29cefc92fc5dd3896b887293320ea716a535bf5a94bbe3565dae80bf531944405c0
function hash_md5()
{
global $postPass;
$cryptPass = false;
$cryptPass = md5($postPass);
return $cryptPass;
}
Посмотри мои сурсы(Лаунчер Сашка), когда запускаю минекрафт - черный экран, версия майна 1.5.1
http://minecraft.industrialdeluxe.ru/launcher/Minecraft Industrial Deluxe.exe@_safok_, сорцы не нужны, кинь уже собранный лаунчер в .jar и логин и пароль для тестов скажи.
<?php
define('INCLUDE_CHECK',true);
require_once 'functions.php';
include ("connect.php");
$login=$_POST['user'];
$password=$_POST['password'];
$ver=$_POST['version'];
if(getGameInfo('launcher') == $ver){
$result = mysql_query("SELECT $db_columnPass FROM $db_table WHERE $db_columnUser='$login'") or die ("Запрос к базе завершился ошибкой."); //извлекаем из базы все данные о пользователе с введенным логином
$myrow = mysql_fetch_array($result);
$realPass = $myrow[$db_columnPass];
if (checkPass($realPass,$password))
{
$sessid = generateSessionId();
$gamebuild=getGameInfo('build');
mysql_query("UPDATE $db_table SET $db_columnSesId='$sessid' WHERE $db_columnUser = '$login'") or die ("Запрос к базе завершился ошибкой.");
$dlticket = md5($login);
echo $gamebuild.':'.$dlticket.':'.$login.':'.$sessid.':';
}
else {
echo "Bad login";
}
}
else{
echo 'Old version';
}
?>
<?php
if(!defined('INCLUDE_CHECK')) die('У вас нет прав на выполнение данного файла!');
function generateSessionId(){
// generate rand num
srand(time());
$randNum = rand(1000000000, 2147483647).rand(1000000000, 2147483647).rand(0,9);
return $randNum;
}
function getGameInfo($type){
include ("connect.php");
switch($type){
case 'build':
$query = mysql_query("SELECT * FROM $db_GameDatatable WHERE $db_Propertycolumn = 'latest-game-build'") or die ("Запрос к базе завершился ошибкой.");
$resource = mysql_fetch_array($query);
return $resource[$db_Valuecolumn];
break;
case 'launcher':
$query = mysql_query("SELECT * FROM $db_GameDatatable WHERE $db_Propertycolumn = 'launcher-version'") or die ("Запрос к базе завершился ошибкой.");
$resource = mysql_fetch_array($query);
return $resource[$db_Valuecolumn];
break;
}
}
function regUsers($mode,$rt){
include ("connect.php");
$users = mysql_query("SELECT `id` FROM $db_table") or die ("FATAL BASE DATA ERROR");
if ($mode=="")
{
return mysql_num_rows($users);
}
elseif ($mode=="regtext")
{
$rt=$rt."Всего ".mysql_num_rows($users)." зарегистрированн";
if (substr(mysql_num_rows($users), strlen(mysql_num_rows($users))-2, 1)=="1")
{
$rt=$rt."ых пользователей";
}
else
{
switch (substr(mysql_num_rows($users),strlen(mysql_num_rows($users))-1, 1))
{
case 1:$rt=$rt."ый пользователь";break;
case 2:$rt=$rt."ых пользователя";break;
case 3:$rt=$rt."ых пользователя";break;
case 4:$rt=$rt."ых пользователя";break;
case 5:$rt=$rt."ых пользователей";break;
case 6:$rt=$rt."ых пользователей";break;
case 7:$rt=$rt."ых пользователей";break;
case 8:$rt=$rt."ых пользователей";break;
case 9:$rt=$rt."ых пользователей";break;
case 0:$rt=$rt."ых пользователей";break;
default:
$rt=$rt." Ошибка падежа(надо было лучше учится в школе!)";
}
}
return $rt;
}
}
function checkPass($realPass,$password){
if (strlen($realPass) == 32)
{
$cp = md5($password);
}
else {
if(strpos($realPass,'$SHA$') !== false)
{
$ar = preg_split("/\\$/",$realPass);
$salt = $ar[2];
$cp = '$SHA$'.$salt.'$'.hash('sha256',hash('sha256',$password).$salt);
}
else
{
$saltPos = (strlen($password) >= strlen($realPass) ? strlen($realPass) : strlen($password));
$salt = substr($realPass, $saltPos, 12);
$hash = hash('whirlpool', $salt . $password);
$cp = substr($hash, 0, $saltPos) . $salt . substr($hash, $saltPos);
}
}
if ($realPass==$cp) {
return true;
}
else {
return false;
}
}
?>
Пересобрал, все равно не пашет!@_safok_, вот скажи, что ты туда напихал???
читай тут что должно быть в папке клиента, возвращайся когда все сделаешь.
@Crisis2010, сделать можно.
Помоги мне пожалусто:|в 2-х словах не расскажешь, нужно сделать как в функции checkPass
если возвращенный из базы хеш пароля имеет размер 32 символа, то использовать md5 если иначе то использовать $SHA$'.$salt.'$'.hash('sha256',hash('sha256',$password).$salt);
что-то типа такого.