[разработка]cms:fls

Система управлением Контентом сайта предназначенная для игровых серверов La2. Изготавливается на сборке L2JOfficial. Ревизия 1.Выпущена 1 ревизия CMS: FLS. В данной ревизии реализовано:статистика эпик рейдбосов.В ревизии 2 всего скорее будет реализовано:л
Автор:я.
Выпуск: Ревизия 2
Выпущена 2 ревизия CMS: FLS. В данной ревизии реализовано:
статистика топ50:пк,кланов,пвп,ошибка 404.
В ревизии 3 всего скорее будет реализовано:
личный кабинет,админка и управление рекламным блоком,статистика. Возможно изменен дизайн будет.А также по мере возможностей реализую коментарии :)
Выпуск: Ревизия 2
Выпущена 2 ревизия CMS: FLS. В данной ревизии реализовано:
статистика топ50:пк,кланов,пвп,ошибка 404.
В ревизии 3 всего скорее будет реализовано:
личный кабинет,админка и управление рекламным блоком,статистика. Возможно изменен дизайн будет.А также по мере возможностей реализую коментарии :)
P.S. просьба добавиь это в первый пост ) а то я немогу его отредактировать )
Ревизия 2
Ну для тех кому это интересно я сделал уже к 3 ревизии полностью нормальный скрипт новостей+комментарии,добавление новостей происходит через недоработанную админ панель(которую я пытаюсь доработать ибо получилось коряво). Если удасться сегодня сделать намечанное то к утру(по ирк.времени) ждите 3 ревизию.
Nik21: Еще сделай онлайн карту под грацию финал которую на ру офф выложили
по подробнее где выложили ссылочку дай )
И вот новый скрипт в руки критика.
Ну что могу сказать как программист увидев твой код.
ОН УЖАСЕН!!
Начиная с того что в PHP файлы состоят практически из одного HTML.
А теперь подробнее:
Начну с того что у тебя не код а полная каша.(это часто называют хардкод :) )
Никакого стиля!!
И говорить что это твой стиль не надо, его там нет.
Начнём с главного и первого файла index.php
Первая строка, как вы думаете что тама? А вот нет! Там пустота!
Вот скажи зачем делать пустую строку в самом начале? У тебя чтоли монитор какой то не ровный что ты не видешь что в самом верху??
Дальше у нас идёт инклуд конфигураций.
include 'includes/config.php';
?>
Ну конечно, куда без них когда дальше идёт HTML!!!!.
Вот скажи зачем ты его инклудишь?
Ах да конфиге у нас
<link rel="shortcut icon" href="images/favicon.ico">
А не дано это в сам index.php вставить?????
А файл конфигов инклудить тогда когда он требуется!
Ну да ладно смотрим дальше а что у нас после HTML? Правельно PHP.
А какой PHP? Не правельный :)
// Если после "?section=" ничего нет, то грузим файл по умолчанию,
// а именно "index.inc.php" из папки "pages".
if(empty($CurSec))
Вот ответь зачем 2 раза проверять одно и тоже?
Ну ладно сначала мы проверили пустой он или нет, если нет то присваиваем значение переменной. Не дано ли сразу проверять $_GET['page'], ведь он либо есть, либо нет. Либо он пустой либо нет.
Смотрим дальше:
Обоже!!!! Ты в каком веке? Думаешь скрипт не поймёт что надо инклудить из этой папки? Зачем ему указывать на это?
./ Выкидывай.
Ладно это ещё не всё.
Помним когда мы инклудили файл конфигов? Посмотри как ты его инклудишь, и как этот файл!
Разница чувствуется? Если пишешь по одному, то пиши везде так!
Дальше ещё интересней!
Давайте посмотрим файл конфигураций, а точнее его кусок:
{
die ("Невозможно поключиться к MySQL серверу или выбрать базу данных MySQL");
}
else
{
}
Вау, у нас подключился скрипт к БД, тогда зачем писать:
{
}
Если там пусто??? Или думаешь скрипт туда что нить сам поставить, а вдруг? В наше время всё возможно :)
Не будем задерживаться на этом файле а идём дальше.
Есть такой файл clanstat.php который находится в pages.
Так что вы думаете в самом начале этого файла? Правельно!!! Снова ПУСТОТА!!!
Я наверное был прав по поводу монитора :)
Это ещё что :)))
А что вы думаете идёт дальше?
Снова инклуд конфигураций.
include 'includes/config.php';
?>
А теперь вопрос, ЗАЧЕМ????? Мы его уже в начали вставляли, зачем ещё раз??????? А ты не думал что там есть такой код как:
<link rel="shortcut icon" href="images/favicon.ico">
У нас уже 2 титула на 1 страничке :))) У тебя видать супер браузер раз понимает это :)))
Смотрим дальше:
Вау мы выполняем пустой запрос!!!!
Вот не понятно зачем это??? Может я слепой? НО я не нашёл нигде переменную $query_chars.
Ну думаю и последнее дальше сил нет смотреть твой код :)))
racters.accesslevel,clan_data.clan_level,clan_data.leader_id
FROM characters,clan_data
WHERE ((characters.charId = clan_data.leader_id) AND (characters.charId > 0))
ORDER BY clan_data.clan_level DESC , clan_data.clan_name, characters.char_name ASC limit 50 ");
Что это?? Это по твоему SQL запрос??? Это куча мусора!!!! Почитай хотябы статьи как оформляются SQL запросы!
DioNiR90: И вот новый скрипт в руки критика.
Ну что могу сказать как программист увидев твой код.
ОН УЖАСЕН!!
Начиная с того что в PHP файлы состоят практически из одного HTML.
А теперь подробнее:
Начну с того что у тебя не код а полная каша.(это часто называют хардкод :) )
Никакого стиля!!
И говорить что это твой стиль не надо, его там нет.
Начнём с главного и первого файла index.php
Первая строка, как вы думаете что тама? А вот нет! Там пустота!
Вот скажи зачем делать пустую строку в самом начале? У тебя чтоли монитор какой то не ровный что ты не видешь что в самом верху??
Дальше у нас идёт инклуд конфигураций.Код<?php
include 'includes/config.php';
?>
Ну конечно, куда без них когда дальше идёт HTML!!!!.
Вот скажи зачем ты его инклудишь?
Ах да конфиге у насКод<title>Your Title</title>
<link rel="shortcut icon" href="images/favicon.ico">
А не дано это в сам index.php вставить?????
А файл конфигов инклудить тогда когда он требуется!
Ну да ладно смотрим дальше а что у нас после HTML? Правельно PHP.
А какой PHP? Не правельный :)Код$CurSec=empty($_GET['page'])?null:$_GET['page'];
// Если после "?section=" ничего нет, то грузим файл по умолчанию,
// а именно "index.inc.php" из папки "pages".
if(empty($CurSec))
Вот ответь зачем 2 раза проверять одно и тоже?
Ну ладно сначала мы проверили пустой он или нет, если нет то присваиваем значение переменной. Не дано ли сразу проверять $_GET['page'], ведь он либо есть, либо нет. Либо он пустой либо нет.
Смотрим дальше:Кодinclude("./pages/news.php");
Обоже!!!! Ты в каком веке? Думаешь скрипт не поймёт что надо инклудить из этой папки? Зачем ему указывать на это?
./ Выкидывай.
Ладно это ещё не всё.
Помним когда мы инклудили файл конфигов? Посмотри как ты его инклудишь, и как этот файл!Кодinclude 'includes/config.php';Кодinclude("./pages/news.php");
Разница чувствуется? Если пишешь по одному, то пиши везде так!
Дальше ещё интересней!
Давайте посмотрим файл конфигураций, а точнее его кусок:Кодif (!$link || !$db)
{
die ("Невозможно поключиться к MySQL серверу или выбрать базу данных MySQL");
}
else
{
}
Вау, у нас подключился скрипт к БД, тогда зачем писать:Кодelse
{
}
Если там пусто??? Или думаешь скрипт туда что нить сам поставить, а вдруг? В наше время всё возможно :)
Не будем задерживаться на этом файле а идём дальше.
Есть такой файл clanstat.php который находится в pages.
Так что вы думаете в самом начале этого файла? Правельно!!! Снова ПУСТОТА!!!
Я наверное был прав по поводу монитора :)
Это ещё что :)))
А что вы думаете идёт дальше?
Снова инклуд конфигураций.Код<?php
include 'includes/config.php';
?>
А теперь вопрос, ЗАЧЕМ????? Мы его уже в начали вставляли, зачем ещё раз??????? А ты не думал что там есть такой код как:Код<title>Your Title</title>
<link rel="shortcut icon" href="images/favicon.ico">
У нас уже 2 титула на 1 страничке :))) У тебя видать супер браузер раз понимает это :)))
Смотрим дальше:Код$link = mysql_query($query_chars);
Вау мы выполняем пустой запрос!!!!
Вот не понятно зачем это??? Может я слепой? НО я не нашёл нигде переменную $query_chars.
Ну думаю и последнее дальше сил нет смотреть твой код :)))Код$activity = mysql_query("SELECT characters.char_name,characters.charId,clan_data.clan_id,clan_data.clan_name,cha
racters.accesslevel,clan_data.clan_level,clan_data.leader_id
FROM characters,clan_data
WHERE ((characters.charId = clan_data.leader_id) AND (characters.charId > 0))
ORDER BY clan_data.clan_level DESC , clan_data.clan_name, characters.char_name ASC limit 50 ");
Что это?? Это по твоему SQL запрос??? Это куча мусора!!!! Почитай хотябы статьи как оформляются SQL запросы!
Поздравляю тебя ) но как бы ты не гулася мне без разницы ибо ето все го лишь вторая ревизия ) и в будующем все будет аккурат ) так что не гони лошадей насяльника )
А никто не гонит. Я это написал чтобы ты это исправил хотябы в будующих версиях.
Только помни одно, если пишешь то пиши изначально грамотный и читабельный код, нежели потом всё исправлять.
Скажу одно что мне понравилось это более мение коментировал свой код.
Не буду хвастаться и т.д.
Но я приведу пример своего кода где я работаю с модулями(у тебя это страницы)
{
$act = basename($_GET['act']);
if( !empty($_Acts[$act]) and $_Acts[$act] == 1 )
{
if( file_exists(_ENGINE_DIR.$act.'.php') )
include_once _ENGINE_DIR.$act.'.php';
else
$system_error[] = 'Файл выбраного действия не существует.';
}
else
$system_error[] = 'Выбранное дейсвие не найдено или отключенно.';
}
else
include_once _ENGINE_DIR.$_CONFIG['main_module'].'.php';
И сравни со своим, и посмотри какой код проще читается.
DioNiR90: А никто не гонит. Я это написал чтобы ты это исправил хотябы в будующих версиях.
Только помни одно, если пишешь то пиши изначально грамотный и читабельный код, нежели потом всё исправлять.
Скажу одно что мне понравилось это более мение коментировал свой код.
Не буду хвастаться и т.д.
Но я приведу пример своего кода где я работаю с модулями(у тебя это страницы)Кодif( !empty($_GET['act']) )
{
$act = basename($_GET['act']);
if( !empty($_Acts[$act]) and $_Acts[$act] == 1 )
{
if( file_exists(_ENGINE_DIR.$act.'.php') )
include_once _ENGINE_DIR.$act.'.php';
else
$system_error[] = 'Файл выбраного действия не существует.';
}
else
$system_error[] = 'Выбранное дейсвие не найдено или отключенно.';
}
else
include_once _ENGINE_DIR.$_CONFIG['main_module'].'.php';
И сравни со своим, и посмотри какой код проще читается.
Спасибо, в будующем учту ) почаще проверяй мои ревизии ) я хоть буду знать где да што не так ) да и что ты тут писал оно уже в третьей которая не выпущена, со вчерашнего вечера в ангарске исправлены )
DioNiR90: А никто не гонит. Я это написал чтобы ты это исправил хотябы в будующих версиях.
Только помни одно, если пишешь то пиши изначально грамотный и читабельный код, нежели потом всё исправлять.
Скажу одно что мне понравилось это более мение коментировал свой код.
я поня шеф
мне кажется вполне симпотичный запросик.
Верно мыслишь, лучше 1 но хорошо работающая, нежели 10 толком не работающих.
DioNiR90: Верно мыслишь, лучше 1 но хорошо работающая, нежели 10 толком не работающих.
Ну ))) они работают то все ))) и выдают то что надо просто надо:
1.Удалить левые переменный.
2.Сделать прическу коду.
3.Оптимизировать запросы(хотя вродмбы они и так нормальные)
Ну вот смотри твой запрос
racters.accesslevel,clan_data.clan_level,clan_data.leader_id
FROM characters,clan_data
WHERE ((characters.charId = clan_data.leader_id) AND (characters.charId > 0))
ORDER BY clan_data.clan_level DESC , clan_data.clan_name, characters.char_name ASC limit 50
и мой:
characters.char_name,
characters.charId,
clan_data.clan_id,
clan_data.clan_name,
characters.accesslevel,
clan_data.clan_level,
clan_data.leader_id
FROM
characters,
clan_data
WHERE
(
(characters.charId = clan_data.leader_id)
AND
(characters.charId > 0)
)
ORDER BY clan_data.clan_level DESC, clan_data.clan_name, characters.char_name ASC LIMIT 50;
Одно и тоже, но какой проще почитать?
$CurSec=empty($_GET['page'])?null:$_GET['page'];
if(empty($CurSec))
include("pages/news.php");
elseif(file_exists("pages/".basename($CurSec).".php"))
include("pages/".basename($CurSec).".php");
else
include("pages/error.php");
?>
так лучше читается? :)
снова:
Зачем это?
Мы либо имеем пустой параметр либо тот который у $_GET['page'].
Так ведь можно обойтись и написать так:
if(empty($_GET['page']))
include("pages/news.php");
elseif(file_exists("pages/".basename($_GET['page']).".php"))
include("pages/".basename($_GET['page']).".php");
else
include("pages/error.php");
?>








