Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |

17.10.2009, 14:42
|
|
Новичок
Регистрация: 16.11.2008
Сообщений: 23
Провел на форуме: 84043
Репутация:
11
|
|
Пара новых вопросов.
Всем добрый день!
Возникла следующая проблема, помогите разобраться кто может:
- есть самописный портал на php и mysql.Сайт разделен на блоки(шапка, леввый блок, основной контент/текс, правый блок и нижний блок) все они подрубаются через include, есть простая админка и есть директория modules в которой есть 4 php файла(1 выводит опрос, 2 выводит рекламный блок, 3 выводит погоду, а 4 выводит 5 последних статей), возникла потребность сделать так, что бы в админке можно было подключать определённый модуль к той или иной стороне.
Последний раз редактировалось AgS; 17.10.2009 в 14:46..
|
|
|

17.10.2009, 14:53
|
|
Постоянный
Регистрация: 02.10.2005
Сообщений: 490
Провел на форуме: 2333839
Репутация:
212
|
|
НУ через мускуль. Таблицу с модулями сделай. И выбирай какой включить, а какой нет.
|
|
|

17.10.2009, 15:01
|
|
Новичок
Регистрация: 16.11.2008
Сообщений: 23
Провел на форуме: 84043
Репутация:
11
|
|
Маленькое пожелание, ненадо подкалывать, язвить в теме, нехотите ничего дельного писать, тогда лучьше вообще не пишите. Сразу говорю безобид.
Я это спрашиваю для того чтобы самому научиться, готовые ответы меня не интересуют, а лучьший способ на мой взгляд научиться, спросить у тех кто это умеет и может помочь.
И если честно думал сделать так: в mysql создать таблицу "r_l_block" с полями "link", "side",(например "modules/golos.php" и "right") в файле правого блока например сделать подключение к бд, сделать запрос на вывод данных из созданной нами таблицы с условием что быдут выводиться только те элементы в которых в поле side указана например right, а дальше в файле правого блока делать:
PHP код:
$result = mysql_query("SELECT * FROM r_l_block WHERE side=right", $db);
$a = mysql_fetch_array($result);
do
{
include "$a[link]";
}
while ($a = mysql_fetch_array($result));
но недумаю что это совсем правильно, и возник вопрос как это все операции делать не ручками а через админку?? и отсюда ещё тогда вопросы:
как сделать чтобы админка сама понимала сколько модулей лежит в дерриктории выводила их название(описание по возможности из данного файла) и давала на выбор куда их подключать? с подключением примерно понимаю как сделать, а как заставить админку показывать подули никак не допру.
и ещё вопрос подскажите для чего нужен or die();
Последний раз редактировалось AgS; 17.10.2009 в 16:39..
|
|
|

18.10.2009, 16:56
|
|
Новичок
Регистрация: 16.11.2008
Сообщений: 23
Провел на форуме: 84043
Репутация:
11
|
|
неужели никто не может подсказать как реализовать данные вещи??
|
|
|

18.10.2009, 17:22
|
|
Познавший АНТИЧАТ
Регистрация: 01.05.2006
Сообщений: 1,021
Провел на форуме: 3424739
Репутация:
921
|
|
тебе в #3 посте сказали
|
|
|

18.10.2009, 17:41
|
|
Постоянный
Регистрация: 27.07.2008
Сообщений: 614
Провел на форуме: 4532332
Репутация:
1196
|
|
cоздай таблицу к примеру ,как ты писал, с такой структурой:
Код:
+---------------+
|link | side |id|
+---------------+
link//название модуля
side//cтатус
допустим ты ее создал и заполнил
Код:
+----------------+
| link | side|id|
| right| on |1|
| left| off |3|
| centr| on |3|
+----------------+
далее:
PHP код:
$query = "SELECT * FROM `moduls`";
$nme = mysql_query($query);
$urlRoww = mysql_fetch_assoc($nme);
$modul =$urlRoww['link'];
$status=$urlRoww['side'];
//пихаем в массив
$modularray=explode(' ',$modul);
$statusarray=explode(' ',$status);
тут можешь использовать различные проверки во избежания глобально/локального инкоуда.
PHP код:
for($i=0;$i<=count($statusarray);$i++)
{
if($statusarray[$i]=='on')
{
include('moduls/'.$modularray[$i].'.php')
}
}
обновлять статусы модулей примерно так:
Код:
mysql_query("UPDATE `moduls` SET `side`='".$status."' WHERE `id`=".$id.");
но это ,ты уже сам домозгуй,да и весь процесс который я описал тоже, т.к. он не совершенный.
Я всего лишь описал один из методов.
Последний раз редактировалось L I G A; 18.10.2009 в 17:55..
|
|
|

18.10.2009, 18:14
|
|
Новичок
Регистрация: 16.11.2008
Сообщений: 23
Провел на форуме: 84043
Репутация:
11
|
|
так посути начало в голове проясняться как это реалезовать.
только вот вопрос как сделать проверку файлов в каталоге(а точнее php файлов модулей)??
Последний раз редактировалось AgS; 18.10.2009 в 18:19..
|
|
|

18.10.2009, 18:23
|
|
Он хакер.
Регистрация: 01.11.2008
Сообщений: 1,756
Провел на форуме: 6462214
Репутация:
3171
|
|
file_exist(name);
|
|
|

18.10.2009, 18:27
|
|
Новичок
Регистрация: 16.11.2008
Сообщений: 23
Провел на форуме: 84043
Репутация:
11
|
|
ушёл пробовать, вечером отпишусь о результатах..
|
|
|
|
 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|