Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 多样式开关_Php - Fatal编程技术网

Php 多样式开关

Php 多样式开关,php,Php,是否有人有一个很好的方法来切换样式在管理部分只改变网站的布局 假设我有3种风格,我想改变网站的外观,但想在管理部分,但效果需要发生在管理和用户端 我希望管理员可以仅更改样式,而不是最终用户,但效果将显示在管理员部分和用户端。您可以使样式表包含一个存储在数据库中的变量。最简单的方法是将所有与样式相关的CSS规则放在一个CSS文件中,该文件您可以通过PHP交换输出 例如,如果您可以在前端和后端的每个PHP页面上使用三种“主题”样式(“loud.css”、“brash.css”和“happy.css”

是否有人有一个很好的方法来切换样式在管理部分只改变网站的布局

假设我有3种风格,我想改变网站的外观,但想在管理部分,但效果需要发生在管理和用户端


我希望管理员可以仅更改样式,而不是最终用户,但效果将显示在管理员部分和用户端。

您可以使样式表包含一个存储在数据库中的变量。

最简单的方法是将所有与样式相关的CSS规则放在一个CSS文件中,该文件您可以通过PHP交换输出


例如,如果您可以在前端和后端的每个PHP页面上使用三种“主题”样式(“loud.css”、“brash.css”和“happy.css”),那么您可以根据数据库设置的内容简单地输出HTML以包含其中一种样式。

将样式表值存储在数据库中,并在标题页呈现时使用它。然后,您可以编写一个简单的管理工具来更改其值。

style.php javascript/jQuery index.php

$avail_styles = array("green","red","blue");

if(isset($_REQUEST['style']) && in_array($_REQUEST['style'],$avail_styles))
{
    session_start();
    $_SESSION['style'] = $_REQUEST['style'];
    echo "1"; exit;
}
echo "0"; //No Changes
$("#style select").change(function(){
    val = $("option:selected",this).val();

    //Ping style.php
    $.get("style.php",{style:val},function(resonce){
        if(response == "1")
        {
            //Load the new style sheet or document.location to refresh
        }
    });
})
<link rel="stylesheet" type="text/css" href="<?php echo $_SESSION["style" ]?>.css" />