Сообщений: 48
Тем: 10
Зарегистрирован: Mar 2010
03-27-2010, 06:06 PM
(Сообщение последний раз редактировалось: 03-27-2010, 06:09 PM bladKiller.)
как вы написали я досихпор ломаю голову себе! вот что пишет
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in W:\home\test1.ru\www\index.php on line 37
Warning: mysql_free_result() expects parameter 1 to be resource, boolean given in W:\home\test1.ru\www\index.php on line 39
Тестировал на своей машыне
Добавлено через 2 минуты
как я понял онлайн TxT кидать на хостинг а в скрипте писать путь к нему? создал .htaccess что дальше делать незнаю!
Сообщений: 48
Тем: 10
Зарегистрирован: Mar 2010
03-27-2010, 06:31 PM
(Сообщение последний раз редактировалось: 03-27-2010, 06:50 PM bladKiller.)
ну прочитал я что такое mod_rewrite понял только то что он для сокращения пути ссылки тип
http://localhost/index.php?show=news&yea...th=9&day=7
будет
http://localhost/news/2002/9/7/
Инадо прописать в .htaccess
А как запрос править?я по запросах скриптов незнаю!
Я так понял в файле онлайна будет писатся онлайн! На сайте надо будет ссылку сделать к нему да? Но как склепать модуль чтобы он показывал не ссылку а зразу число?
Добавлено через 19 минут
ну помогите скрипт настроить(((((((
Сообщений: 211
Тем: 11
Зарегистрирован: Jul 2009
Репутация:
2,309
PROGRAMMATOR Написал:Какой движок на сайте установлен? Хотя без разницы.
Вот вам модуль для нашего Aion-Top (вывод онлайна), просто измените запрос SELECT ... и установите SHARING = true
PHP код:
<?php
/*
* Модуль вывода игроков в онлайне
* Автор модуля PROGRAMMATOR
* (c) 2010 www.aion-top.info
*/
// общий доступ к файлу online.txt
define('SHARING', false);
if (preg_match('/AionTopBot/', $_SERVER['HTTP_USER_AGENT']) or SHARING)
{
#################################
# Настройка подключения к MySQL #
#################################
$db = array (
'host' => 'localhost', // хост
'port' => '3306', // порт
'user' => 'root', // пользователь
'pass' => 'пароль', // пароль
'name' => 'aion' // база данных
);
#################################
# Ниже ничего не редактировать! #
#################################
// подключаемся к MySQL
mysql_connect($db['host'].':'.$db['port'], $db['user'], $db['pass']) or die();
// выбираем базу данных
mysql_select_db($db['name']);
// делаем выборку
$sql = mysql_query('SELECT * FROM players WHERE online=1');
// выводим количество
echo (mysql_num_rows($sql));
// освобождаем ресурсы
mysql_free_result($sql);
}
else
{
header('HTTP/1.0 404 Not Found');
}
?>
Могу оспорить твой код, т.к. в большенстве случаев сайт находиться на отдельном хосте от гейм сервера и используеться внешний коннект (как известно он намного медленей локального) есть необходимость сохранять результат онлайна и время в отдельный файл (лучше в 1) и сделать время сохранения в 1 минуту, далее тут нету mysql_close();
предлогаю такой вариант:
PHP код:
<?php
Function connect_to_Game()
{
define("MYSQLHOST", "хост");
define("DBUSER", "пользователь");
define("DBPASS", "пароль");
define("DBNAME", "база");
$game = mysql_connect (MYSQLHOST, DBUSER, DBPASS);
mysql_select_db (DBNAME);
}
$count = File("online.txt");
IF(!$count[0]) $count[0] = 0;
IF(!$count[1]) $count[1] = 0;
IF(($count[0]+60) <= time())
{
connect_to_Game();
$online = mysql_result(mysql_query("SELECT COUNT(*) FROM `players` WHERE `online` = 1"),0);
file_put_contents('online.txt', Time()."\n".$online);
mysql_close($game);
}
ELSE
{
$online = $count[1];
}
Только набросал мб ошибся где.