Войти или зарегистрироваться

Помогите Кракозябры при заходе на сервере

  • Автор темы Автор темы TANG
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

TANG

Активный участник
Пользователь
Баллы
68
Имя в Minecraft
LIVEBOY97
Собственно сделал заход на сервер через лаунчер , в клиенте прописал путь к joinserver, в craftbukkit к checkserver. Вроде все правильно, захожу в лаунчер, авторизация проходит нормально, запускаю клиент, захожу на сервер и выдает непонятную ошибку. Скрин прилагается
 

Вложения

  • krakozyabr.png
    krakozyabr.png
    28,7 КБ · Просмотры: 88
Синхронизуй чексервер и джоинсервер. Т.е сессия должна заносится в бд а чек сервер должен ее проверять
 
Возможно лаунчер не выдает сессию клиенту.
 
Возможно лаунчер не выдает сессию клиенту.
НУ это магия. Дело в том, что лаунчер норм работает, сессия записывается, соединение с бд есть, в джоин сервере есть проверка на наличие сессиии и если она пройдена, добавляется запись в колонку сервера. В чек сервере эта запись проверяется. Вроде все правильно,и в тоже время магическим образом не работает.
 
@TANG, Ну для начало joinserver.php выстави с кодировкой ansi :). И там крякозябры магическим образом превратятся в читаемый текст.
 
@TANG, Ну для начало joinserver.php выстави с кодировкой ansi :). И там крякозябры магическим образом превратятся в читаемый текст.
А ты колдун ваще. Ошибка: Запрос к базе завершился ошибкой.
Код joinserver.php:
Код:
<?php
define('INCLUDE_CHECK',true);
include ("connect.php");
 
$sessionid = mysql_real_escape_string($_GET['sessionId']);
$user = mysql_real_escape_string($_GET['user']);
$serverid = mysql_real_escape_string($_GET['serverId']);
 
$result = mysql_query("Select $db_columnUser From $db_table Where bin2hex(mhash(MHASH_SHA256, $db_columnSesId))='$sessionid' And $db_columnUser='$user' And $db_columnServer='$serverid'") or die ("Запрос к базе завершился ошибкой.");
 
if(mysql_num_rows($result) == 1){
    echo "OK";
} else {
 
$result = mysql_query("Update $db_table SET $db_columnServer='$serverid' Where bin2hex(mhash(MHASH_SHA256, $db_columnSesId))='$sessionid' And $db_columnUser='$user'") or die ("Запрос к базе завершился ощибкой.");
 
    if(mysql_affected_rows() == 1){
        echo "OK";
    } else {
        echo "Bad login";
    }
}
?>
Код checkserver.php:
Код:
<?php
define('INCLUDE_CHECK',true);
include ("connect.php");
 
$user = mysql_real_escape_string($_GET['user']);
$serverid = mysql_real_escape_string($_GET['serverId']);
 
$result = mysql_query("Select $db_columnUser From $db_table Where $db_columnUser='$user' And $db_columnServer='$serverid'") or die ("Запрос к базе завершился ошибкой.");
 
if(mysql_num_rows($result) == 1){
    echo "YES";
} else{
    echo "NO";
}
 
?>
 
@TANG, Что то не правильно настроил в конфиге подключения к бд. Или отсутствуют какие то колонки в базе.
 
@TANG, Что то не правильно настроил в конфиге подключения к бд. Или отсутствуют какие то колонки в базе.
Колонки есть, бд подключена правильно. Несколько раз проверил
 
Несколько вариантов:
1)Ты неправильно настроил connect.php(что вероятнее)
2)На твоем хостинге запрещено внешнее подключение к бд.
 
ой бл* скачай скрипты проверки от добрика и проверь
 
Несколько вариантов:
1)Ты неправильно настроил connect.php(что вероятнее)
2)На твоем хостинге запрещено внешнее подключение к бд.

1) Я же сказал лаунчер работает нормально,а он тоже требует правильно настроенного коннекта.
2) Удаленный доступ запрещен, но он в данном случае и не нужен, ибо все файлы на сервере
 
замени все
Код:
or die ("Запрос к базе завершился ощибкой.")
на
Код:
or die(mysql_error())
и увидишь ошибку.
 
Тогда, либо ты(повторяюсь) указал не все таблицы/столбцы в сonnect.php, либо ошибка в самих скриптах(касательно bin2hex), что маловероятно, так как у меня абсолютно такие же joinserver и checkserver.
 
Тогда, либо ты(повторяюсь) указал не все таблицы/столбцы в сonnect.php, либо ошибка в самих скриптах(касательно bin2hex), что маловероятно, так как у меня абсолютно такие же joinserver и checkserver.
Делал под дле, в таблице dle_users запилил эти столбцы session и server. Правильно?
 
@TANG, Функция bin2hex не существует. В этом и ошибка. Как вариант убрать ее и оставить так Where $db_columnSesId='$sessionid'
 
Статус
Закрыто для дальнейших ответов.
Назад
Верх