Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

vonzuben

CSS Dinâmico

Recommended Posts

Como mudar a cor da fonte e background atraves dos valores do Banco de dados

fiz assim não funciou

no htaccess coloquei

AddType application/x-httpd-php .css

no css coloquei

<?php
$sql = mysql_query("SELECT * FROM usuarios WHERE usuario_id = '$usuario_id'");
$linha = mysql_fetch_array($sql);
$cor_tema = $linha ['cor_tema'];
?>

#temas { float: left; width: 600px; height: 3px; background: #<?php echo $cor_tema; ?>; }

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem que definir o header pra informar que a saida é css.

 

e na minha humilde opinião( não sou ninguém) o thiago que é um cara que me ensinou muitas coisas se equivocou nesse conceito.

 

isso dai é puro gato

Compartilhar este post


Link para o post
Compartilhar em outros sites

será q roda fazer no index IF e ELSE para cada CSS com sua cor?

tipo: azul.css laranja.css e assim vai

se o cara escolheu o azul chama o azul.css, se chamou o laranga chama o laranja.css

fica até mais complicado, mas não teria problema com imagem ex: imagem azul no fundo azul teria problema, assim dentro do CSS azul trocaria a imagem com cor diferente

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu, humildemente prefiro:

 

ter o css padrão e outros css mudando as cores.

 

principal.css

theme-blue.css

theme-gree.css

 

e gravar no cookie ou até em DB mesmo qual o usuário preferir e só carregar o caminho a partir do php.

 

1000 vezes mais organizado e menos pesado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou fazer assim

o cara na area restrita escolhe a cor na div e grava no banco de dados FA9100

colocaria assim

if($corlinha == "FA9100"){
            chama orange.css
        }
 elseif($corlinha == "FF0000"){
         chama vermelho.css
        }
 elseif($corlinha == "317329"){
         chama verde.css
        }
 else{
        chama principal.css
        }

ainda bem que o CSS tem 180 linha rs, pois 20 cores o tema
se fosse site grande estava perdido
negocio é começar usar o LESS

Compartilhar este post


Link para o post
Compartilhar em outros sites

para o que vc fez começar funcionar é só por o header indicando que é css.

Como comentário pessoal acho que não é uma boa ideia.

de qualquer maneira boa sorte

Compartilhar este post


Link para o post
Compartilhar em outros sites

tem que definir o header pra informar que a saida é css.

 

e na minha humilde opinião( não sou ninguém) o thiago que é um cara que me ensinou muitas coisas se equivocou nesse conceito.

 

isso dai é puro gato

Na verdade não é gato, o objetivo de se fazer isso, é para o php ler tags dentro de arquivos css, para que depois eles poderem ser guardados em cache, aumentando a renderização

Compartilhar este post


Link para o post
Compartilhar em outros sites

simplesmente coloque no seu arquivo php

header("Content-type: text/css");

 

no começo ;)

 

PS: a métodos mais faceis como temas

<link rel="stylesheet" href="temas/<?php echo $tema_selecionado; ?>">

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade não é gato, o objetivo de se fazer isso, é para o php ler tags dentro de arquivos css, para que depois eles poderem ser guardados em cache, aumentando a renderização

Já é "errado" você deixar HTML e PHP no mesmo lugar quem dera CSS e PHP...

 

Não se deve misturar as coisas, de a cesar o que é de cesar...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já é "errado" você deixar HTML e PHP no mesmo lugar quem dera CSS e PHP...

 

Não se deve misturar as coisas, de a cesar o que é de cesar...

 

 

Não concordo, o que tem de errado com PHP misto em HTML?, essa é a base do PHP a interatividade ele foi feito para atuar basicamente como um "Html Dinamico" :graduated:

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

simplesmente coloque no seu arquivo php

header("Content-type: text/css");

 

no começo ;)

 

PS: a métodos mais faceis como temas

<link rel="stylesheet" href="temas/<?php echo $tema_selecionado; ?>">

não entendi esse final, pois são 20 temas ou melhor 20 cores, sendo que teria que fazer um IF , ELSE nesse echo

 

<link rel="stylesheet" href="temas/<?php echo $tema_selecionado; ?>">

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

não entendi esse final, pois são 20 temas ou melhor 20 cores, sendo que teria que fazer um IF , ELSE nesse echo

 

<link rel="stylesheet" href="temas/<?php echo $tema_selecionado; ?>">

 

Pelo que entendi ...

Se você tivesse temas (templates) especificos e um css para cada um deles. Parece não ser o seu caso, mas foi apenas uma sugestão do colega.

 

Neste caso, você traz a cor do banco de dados por exemplo:

São 20, você pode deixar os hexadecimais com o tom na área adm e um campo texto para o usuário digitar.

 

Faz o select e traz a cor, melhor que um monte de if (pode deixar um cor default)

 

Se vindo do banco o campo estiver vazio -> usa o default

Senão usa a cor que o user digitou.

 

Quero saber se misturar css em php faz parte de boas práticas

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não concordo, o que tem de errado com PHP misto em HTML?, essa é a base do PHP a interatividade ele foi feito para atuar basicamente como um "Html Dinamico"

Eu coloquei entre aspas a palavra para não entender exatamente desse jeito, não é que é ERRADO só que não é o melhor jeito.

 

e não, o PHP não é um HTML dinamico e esta muito longe disso.

 

html dinamico é o html5 hoje,

 

existem padrões de desenvolvimento no qual melhora a estrutura do seu programa e temos o famoso MVC, ele separa as camadas de usuário e de sistema(HTML e PHP)..

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma sugestão é cria um cache do css na cor desejada e subscrever o antigo

 

@ob_start();

//SQL
//CSS 

$utm_content = @ob_get_contents(); //Salvar na pasta css

Ai sim pode utilizar o código do thiago belem, e para chamar use:

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom fiz assim

<?php
				
if(isset($_POST['inserir_tema_1'])){
					
$cor_tema = 'red.css';		
				   			   
$sql = mysql_query("UPDATE usuarios SET cor_tema = '$cor_tema' WHERE usuario_id = '$usuario_id'") or die( mysql_error());
				
if (!$sql){
    echo '<div class="erro">Não foi possível alterar a cor do tema.</div>';

}else{
   echo '<div class="enviado">A cor do tema foi alterado com sucesso.</div>';
}}
?>
<form action="http://www.site.com.br/painel/temas" method="post">
       <div class="box-color-tema">
              <button type="submit" name="inserir_tema_1" class="color-1"></button>
        </div>                     
</form>
#temas .box-color-tema { float: left; width: 450px; height: 200px; margin-top: 10px; }
#temas .box-color-tema button { float: left; width: 35px; height: 35px; border-radius: 2px; border: 1px solid #050505; margin: 5px; cursor: pointer; display: block; }
#temas .box-color-tema .color-1 { background-color: #FF0000; }

 

 

<link rel="stylesheet" href="../painel/css/<?php echo $cor_tema; ?>"/>

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem melhor \o/

 

mas estruturas como width, height, display, float etc..

poderia ficar num arquivo global e os outros que só define as cores

como assim global?

o único é float ou não entendi que você quer dizer

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.