【问题标题】:How to pass an array from controller to PHP file that contains CSS before the view is loaded?如何在加载视图之前将数组从控制器传递到包含 CSS 的 PHP 文件?
【发布时间】:2014-04-10 23:23:58
【问题描述】:

我的目标是:从我从数据库中获得的值更改 CSS 文件

行动过程:

在视图Page1.php的文本框中输入'red'并提交。

Page1.js 将 ajax 中的值发送到 Page2_Controller 调用 Settings_model 以在数据库中添加值。

这是我的问题..

我需要从数据库中获取“红色”设置并将其发送到 settings.php(即 CSS)调用 Page2.php 视图之前。

查看 1

我调用php/css文件

<link rel="stylesheet" type="text/css" href="css/settings.php">

Controller 1在视图加载前的索引中:

$data['settings'] = $this->settings_model->getSettings();

settings_model:

public function getSettings()

现在我要做的是将我的设置发送到 settings.php 文件,其中包含:

<?php 
    header("Content-type: text/css");
    (get my array here)
    $userNameColor = the value from the array;
?>
#userName{
   color:$userNameColor;
}

【问题讨论】:

  • 哪个 MVC,我知道您的控制器是 css 并且此控制器中的功能类似于 actionSettings? (不需要 php) - 现在我只是认为您对在那里所做的事情缺乏了解。你的主要目标是什么?从 DB 中获取 CSS 数据并推送出去?
  • CodeIgniter 是的,我同意我的问题不清楚。我将编辑我的问题以显示我正在执行的操作过程。

标签: php css codeigniter


【解决方案1】:

你总是可以在页面的 css 上回显你的字符串:

<STYLE type="text/css">
   #userName{
<?PHP 
$css = $data['settings'];//or whatever your data is called
foreach($css as $key => $value)
{
?>    
     <?= $key?> : <?= $value?>;
<?PHP
}
?>
   }
 </STYLE>

【讨论】:

  • 大写 HTML? :-O
【解决方案2】:

试试这个:

#userName{
   color: <?php echo $userNameColor ?>
}

#userName{
   color: <?= $userNameColor ?>
}

需要在css文件中嵌入php代码输出变量的值

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-07-06
    • 1970-01-01
    • 1970-01-01
    • 2014-12-02
    • 1970-01-01
    • 2018-06-11
    • 2011-07-19
    相关资源
    最近更新 更多