Назад

Кто онлайн, вопрос...

Автор: xDREDDx: Дата: 01.16.2011

Вот написал скрипт, но показывает только одного игрока в онлайне... Как правильно исправить? нужна помощь...


$host = "localhost";  //адрес хоста
$user = "root"; //имя пользователя БД
$pass = "pass";//пароль доступа к БД
$robase = "ragnarok"; //имя БД РО

// Соединяемся с базой данных
$db = mysql_pconnect($host,$user,$pass)
// Если не удается подключиться
or die (mysql_error());

// подгружаем БД
$select = mysql_select_db($robase, $db) or die(mysql_error());

echo "






";
echo "



";
opmain_body("Кто онлайн");
echo "







";

$charinf = mysql_fetch_array(mysql_query("SELECT `name`, `base_level`, `job_level`, `class`, `last_map` FROM `char` WHERE online = '1' ORDER BY `base_exp` DESC LIMIT 100 ",$db));

echo '






';

echo "
Имя Уровень Профессия Карта
'.$charinf['name'].' '.$charinf['base_level'].'/'.$charinf['job_level'].' '.$jobname[$charinf['class']].' '.$charinf['last_map'].'

";
clmain_body();

?>


И еще бы присвоить порядковый номер каждому игроку в таблице... пробовал, но он не изменялся...

Автор: xDREDDx: Дата: 01.16.2011

Сначала: Parse error: syntax error, unexpected '}' in ...\who_online.php on line 55
Убрал }
и вот..
Parse error: syntax error, unexpected T_ECHO in ...\who_online.php on line 57

Немогу понять из-за чего(

Автор: Alort: Дата: 01.16.2011

Цитата xDREDDx;30410:
Сначала: Parse error: syntax error, unexpected '}' in ...\who_online.php on line 55
Убрал }
и вот..
Parse error: syntax error, unexpected T_ECHO in ...\who_online.php on line 57

Немогу понять из-за чего(


Пользуйся каким нить редактором типа нотепада++, да и php же тебе сказал что ошибка синтаксическая на линии 57, в операторе echo.

Автор: xDREDDx: Дата: 01.16.2011

Вот разобрался, подправил кое-что. Собственно вот и сам рабочий скрипт, пользуйтесь...)


// Соединяемся с базой данных
$db = mysql_pconnect($CONFIG_sql_host,$CONFIG_sql_username,$CONFIG_sql_password)
// Если не удается подключиться
or die (mysql_error());

// подгружаем БД
$select = mysql_select_db($CONFIG_sql_dbname, $db) or die(mysql_error());

if(!$SERVER['system_safe'])
header("location:index.php?act=idx");

echo "






";
echo "



";
opmain_body("Кто онлайн");
echo "








";

$res = mysql_query("SELECT `name`, `base_level`, `job_level`, `class`, `last_map` FROM `char` WHERE online = '1' ORDER BY `base_exp` DESC LIMIT 100 ",$db);
$id = 1;
while( $charinf = mysql_fetch_array( $res ) )
{

echo '






';

$id++;

}

echo "
Номер Имя Уровень Профессия Карта
'.$id.' '.$charinf['name'].' '.$charinf['base_level'].'/'.$charinf['job_level'].' '.$jobname[$charinf['class']].' '.$charinf['last_map'].'

";
clmain_body();

?>


Спасибо unded =)

Автор: Alort: Дата: 01.16.2011

Цитата xDREDDx;30456:
Вот разобрался, подправил кое-что. Собственно вот и сам рабочий скрипт, пользуйтесь...)


$host = "localhost";  //адрес хоста
$user = "root"; //имя пользователя БД
$pass = "pass";//пароль доступа к БД
$robase = "ragnarok"; //имя БД РО

// Соединяемся с базой данных
$db = mysql_pconnect($host,$user,$pass)
// Если не удается подключиться
or die (mysql_error());

// подгружаем БД
$select = mysql_select_db($robase, $db) or die(mysql_error());

if(!$SERVER['system_safe'])
header("location:index.php?act=idx");

echo "






";
echo "



";
opmain_body("Кто онлайн");
echo "








";

$res = mysql_query("SELECT `name`, `base_level`, `job_level`, `class`, `last_map` FROM `char` WHERE online = '1' ORDER BY `base_exp` DESC LIMIT 100 ",$db);
$id = 1;
while( $charinf = mysql_fetch_array( $res ) )
{

echo '






';

$id++;

}

echo "
Номер Имя Уровень Профессия Карта
'.$id.' '.$charinf['name'].' '.$charinf['base_level'].'/'.$charinf['job_level'].' '.$jobname[$charinf['class']].' '.$charinf['last_map'].'

";
clmain_body();

?>


Спасибо unded =)


Единственное что хотелось бы отметить, подключение к базе вообще бы выделить в отдельный файл, а сюда его просто инклюдить, неудобно же будет в каждом скрипте писать эти подключения, да и с точки зрения безопасности тоже не айс.

Автор: xDREDDx: Дата: 01.16.2011

Да, согласен, это будет переделываться...
Покачто, это как дополнение, потом сведу их в комплект ЦП...

Переделал, спасибо за идею)