Динамическая база данных, управляемая CSS - PullRequest
1 голос
/ 09 марта 2012

Вот моя проблема, у меня есть сайт, который я создаю. Я включаю страницу администратора, чтобы управлять всем на лету, с которым у меня нет проблем, так как это довольно простой php, mysql и т. Д. У меня есть мысль, что я могу использовать базу данных для хранения css и динамического вызова Когда я добавляю новые настройки для разных классов, идентификаторов и т. д., моя таблица такова: настройки идентификатор - класс - дела - установка

Где класс - это что-то вроде body, header, footer и т. Д., А div и настройки следующие:

.header {
$div:$setting;
}

в моем сценарии я повторяю тег style и включаю его в теги head.

мой код для чего стоит ниже:

$header_query = mysql_query("SELECT style, setting FROM styles WHERE class='header'");
$header_result = mysql_fetch_array($header_query);


echo "<style type='text/css'>";
echo ".header {";
   foreach($header_result as $hstyle => $hsetting){
   echo $hstyle.":".$hssetting.";";
   }

   echo "}";
   echo "</style>";

Я подумал, что этого будет достаточно, чтобы повторить каждую настройку для этого конкретного класса, и я был прав частично. Вместо вывода нужного кода мое эхо (в зависимости от команды mysql_fetch, которую я использую) выдает что-то вроде этого:

<style>
.header {
0:div;1:background;2:setting;3:url(x.jpg)
}
</style>

Есть идеи, я в тупике?

Ответы [ 2 ]

1 голос
/ 09 марта 2012

mysql_fetch_array извлекает одну строку.Поэтому вы можете использовать что-то вроде

$header_query = mysql_query("SELECT style, setting FROM styles WHERE class='header'");

echo "<style type='text/css'>";
echo ".header {";

while($header_result_row = mysql_fetch_array($header_query,MYSQL_ASSOC))
    echo $header_result_row['style'].":".$header_result_row['setting'].";";

echo "}";
echo "</style>";

Почти все mysql_fetch_* влияют только на один ряд, имейте это в виду.См. Также mysql_fetch_array примеры .

0 голосов
/ 09 марта 2012

Это правильно, потому что mysql_fetch_array возвращает массив (отсюда и имя), который содержит индексированный список всех результатов, где каждая строка представляет собой ассоциативный массив.и тебе должно быть хорошо идти.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...