Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Пара новых вопросов. (https://forum.antichat.xyz/showthread.php?t=148997)

AgS 17.10.2009 14:42

Пара новых вопросов.
 
Всем добрый день!
Возникла следующая проблема, помогите разобраться кто может:
- есть самописный портал на php и mysql.Сайт разделен на блоки(шапка, леввый блок, основной контент/текс, правый блок и нижний блок) все они подрубаются через include, есть простая админка и есть директория modules в которой есть 4 php файла(1 выводит опрос, 2 выводит рекламный блок, 3 выводит погоду, а 4 выводит 5 последних статей), возникла потребность сделать так, что бы в админке можно было подключать определённый модуль к той или иной стороне.

D1mOn 17.10.2009 14:53

НУ через мускуль. Таблицу с модулями сделай. И выбирай какой включить, а какой нет.

AgS 17.10.2009 15:01

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

И если честно думал сделать так: в 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 18.10.2009 16:56

неужели никто не может подсказать как реализовать данные вещи??

Sharky 18.10.2009 17:22

тебе в #3 посте сказали

L I G A 18.10.2009 17:41

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.");
но это ,ты уже сам домозгуй,да и весь процесс который я описал тоже, т.к. он не совершенный.
Я всего лишь описал один из методов.

AgS 18.10.2009 18:14

так посути начало в голове проясняться как это реалезовать.
только вот вопрос как сделать проверку файлов в каталоге(а точнее php файлов модулей)??

m0Hze 18.10.2009 18:23

file_exist(name);

AgS 18.10.2009 18:27

ушёл пробовать, вечером отпишусь о результатах..


Время: 12:46