Потестировать портальную систему

mpak

Новичок
Потестировать портальную систему

Предлагаю потестировать мою систему. Ссылка на исходные коды есть на главной странице. Есть возможность регистрации доменов с интернациональными символами. Если нужно поменять код на почтовый ящик можно получить логин пароль к файловой системе домена. В файловой системе можно создавать свои модули и блоки. Как это делать написано в статье на главной странице. Написал несколько статей по основным задачам. Там же на главной странице есть ссылка на демонстрационный домен в котором можно посмотреть админстраницу и попробовать ее в действии. Сайт проекта http://mpak.su На главной странице размещена форма для регистрации сайтов. Возоможно использование в имени домена интернациональных символов. Использовать свои доменные имена. Для этого нужно настроить ДНС запись своего имени на сервер с системой.
 

mpak

Новичок
Хостинг на пхп. Я вижу прямую связь. Предлагаю потестить мою систему. И похоститься нахаляву если кому то понравится.
 

zerkms

TDD infected
Команда форума
сайт - ваще трава

ps: перенёс тред в общий раздел. в хостинге ему не место.
pps: автор, ты видел ucoz?
 

damngood

Мозг был, но ушел...
Что-то мне кажется что мало кто пойдет к частному лицу что-то хостить)
 

mpak

Новичок
Смотря что хостить. У меня уже хостятся несколько проектов. Пока вроде не жалуются. К тому же код открыт. Никто не мешает в случае каких то непредвиденных обстоятельств сайт на любой другой хост залить.

-~{}~ 27.11.09 18:39:

Автор оригинала: zerkms
сайт - ваще трава

ps: перенёс тред в общий раздел. в хостинге ему не место.
pps: автор, ты видел ucoz?
Я не сайт предлагаю обсудить. А систему на которой он сделан.

Укоз видел. И что?
 

zerkms

TDD infected
Команда форума
Я не сайт предлагаю обсудить. А систему на которой он сделан.
выложи сорсы и дай ссылку на архив - обсудим систему.

mpak
начнём издалека: у тебя есть лицензия на оказываемые услуги? а именно - предоставление интернет-хостинга.
 

mpak

Новичок
Лицензии нет. Мне из за этого системы свои нельзя писать?. На сырки ведет ссылка в верхнем левом блоке. Там же дана ссылка на демо хост где можно админстраницу посмотреть. Плюс это не тот хостинг про который большенство подумало. Здесь файловая структура подругому размещена. Нельзя залить файл по фтп и дать на него ссылку. И человек ограничен возможностями системы. Не получится использовать что то другое кроме данной системы.
 

zerkms

TDD infected
Команда форума
сорсы посмотрел.
код объективно - говняный.
 

zerkms

TDD infected
Команда форума
причём конкретно в твоём случае невозможно сказать, что именно в нём не так и что плохо. потому что плохо вообще всё.

-~{}~ 28.11.09 01:52:

даже далеко ходить не нужно. первые строки:

$conf['db']['conn'] = @mysql_connect($conf['db']['host'], $conf['db']['login'], $conf['db']['pass']);

зачем здесь @?
 

damngood

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

По коду, согласен с zerkms. Код, как бы помягче сказать, шокировал =)

if (!function_exists('bcont')){
function bcont(){# Загружаем список блоков и прав доступа
...

нафик нафик...
 

zerkms

TDD infected
Команда форума
mpak
т.е. ответа на мой вопрос не будет? Аргументированного.
 

mpak

Новичок
@ для подавление ошибок. В данном случае мне не нежен вывод ошибок.
 

damngood

Мозг был, но ушел...
mpak
такой код - это плохой код.

Да, ты бы шаблонизатор что ли юзал какой. На лапше конечно писать быстро, но поддерживать хреново.

-~{}~ 27.11.09 19:00:

Классов и ООП вообще не нашел
 

mpak

Новичок

if (!function_exists('bcont')){
function bcont(){# Загружаем список блоков и прав доступа
...

При некоторых ситуациях возникает ситуация когда функция будет обьявляться два раза. Для этого и сделана проверка.
 

zerkms

TDD infected
Команда форума
далее фишки с логикой:

$conf['fs']['path'] = "../".(substr($_SERVER['SERVER_NAME'], 0, 4) != 'www.' ? 'www.' : '')."{$_SERVER['SERVER_NAME']}:../mpak.cms";

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

если мало и этого - spisok("SELECT name, value FROM {$conf['db']['prefix']}settings");
spisok..... открой translate.google.com и переведи имена, чтобы их могли читать все адекватные люди. хочется русских имён - пиши на кириллице.

мало? почитай где-нибудь о вреде глобальных переменных.

ещё хочется?
$sess = mpql(mpqw("SELECT * FROM {$conf['db']['prefix']}sess WHERE `ip`='{$_SERVER['REMOTE_ADDR']}' AND last_time>=".(time()-$conf['settings']['sess_time'])." AND `agent`='{$_SERVER['HTTP_USER_AGENT']}' ORDER BY id DESC"), 0);
неэкранированные клиентские данные. представь себе - в HTTP_USER_AGENT можно написать что угодно. sql inj
мало?
хочется ещё аргументов?

Код:
if ( ( isset($_GET['m']['admin']) || array_search('admin', $_GET['m'] ) ) && ( $GLOBALS['conf']['user']['uname'] == $GLOBALS['conf']['settings']['admin_usr'] || array_search( $GLOBALS['conf']['settings']['admin_grp'], $GLOBALS['conf']['user']['gid'] ) ) ){
	foreach(mpql(mpqw("SELECT a.id, a.name FROM {$GLOBALS['conf']['db']['prefix']}admin as a, {$GLOBALS['conf']['db']['prefix']}modules as m WHERE a.id = m.admin GROUP BY a.id ORDER BY a.id", 'Информация о админразделах')) as $k=>$v)
		$content .= " | <a href='/admin/{$v['id']}'>".($_GET['id'] == $v['id'] ? '<font color=blue>' : '')."{$v['name']}".($_GET['id'] == $v['id'] ? '</font>' : '')."</a>";
как мне эту твою лапшу заменить на мой дизайн? читаем о шаблонизаторах.

мало?
if (!function_exists('bcont')){
function bcont()

зачем проверка? на всякий случай? или может лучше просто файл не инклудить дважды? или это не по-джедайски?

дальше смотреть лень.

-~{}~ 28.11.09 02:02:

@ для подавление ошибок. В данном случае мне не нежен вывод ошибок.
и какие же ошибки могут быть в приведённой строке. расскажи, пожалуйста.
 

zerkms

TDD infected
Команда форума
При некоторых ситуациях возникает ситуация когда функция будет обьявляться два раза. Для этого и сделана проверка.
таких ситуаций быть не должно быть. файлы с функциями должны включаться единожды. а разные функции должны быть названы по-разному. хочется полиморфности - читай об ООП.
 
Сверху