CSS dynamique : problème

theodelacharie Messages postés 4 Date d'inscription   Statut Membre Dernière intervention   -  
rbou Messages postés 94 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je suis en train de mettre en place un système de css dynamique. Cela ne fonctionne pas pour l'instant et j'ai donc besoin de vos lumières.


Voila où j'en suis pour l'instant :

- fichier index.php, où je souhaite que les styles soient appliqués :
<head>

<link rel="stylesheet" type="text/css" media="screen" href="\css\css.php">

</head>

<body>

...


==> Ca, ça fonctionne, le fichier test.php est bien appelé.

- fichier params.ini, où sont stockés mes paramètres :
bgcolor=#40A497


- fichier css.php :

<?php 
header("Content-type: text/css"); 
$bg_color = $this->params->get('bgcolor');
?>



#page_bg {
	background: <?=$bg_color?>;
}


==> là ça coince ! Le css est bien appellé, car si je mets un code couleur à la place de <?=$bg_color?>, il s'applique. Mais le code d'appel du paramètre ne fonctionne pas...

Je suis un peu perdu : qu'est ce qui ne va pas dans mon code ?

Merci beaucoup pour votre aide.

Théo

7 réponses

arth Messages postés 9374 Date d'inscription   Statut Contributeur Dernière intervention   1 293
 
Tu as regardé ce qui sortait du code : $bg_color = $this->params->get('bgcolor'); ?

Parce que si ça se trouve il ne récupère rien, donc pas de couleur.
0
theodelacharie
 
Bonjour, merci pour ta réponse.

Non, je n'ai pas vérifié : comment faire, t'as une idée ?

Merci pour ton aide.
0
rbou Messages postés 94 Date d'inscription   Statut Membre Dernière intervention   15
 
echo, print_r etc
0
theodelacharie
 
OK.

Ca fonctionne, le paramètre est bien appellé.

Par contre, j'ai l'impression que c'est le css qui refuse de s'apliquer dès que j'ajoute le code : $bg_color = $this->params->get('bgcolor');

Si mon fichier css.php contient :
<?php 
header("Content-type: text/css"); 
$bg_color = $this->params->get('bgcolor');
?>



#page_bg {
	width: 940px;
	height: 100%;
	padding: 10px;
	margin: 0 auto;
	background: #40A497;
}


Le background ne s'affiche pas.

Par contre, si j'insère ce code :


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

?>



#page_bg {
width: 940px;
height: 100%;
padding: 10px;
margin: 0 auto;
background: #40A497;
}


Ca marche...
0
theodelacharie
 
Si je charge le css.php dans le navigateur, j'obtiens ceci :
<br />
<b>Fatal error</b>: Using $this when not in object context in <b>C:\xampp\htdocs\EasyWebSite\templates\wm_01_j15\test.php</b> on line <b>3</b><br />

Si ça te dis quelques chose...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
theodelacharie
 
Up !

Je suis toujours coincé... Help !

Merci beaucoup à tous.
0
rbou Messages postés 94 Date d'inscription   Statut Membre Dernière intervention   15
 
envoie le code de ton fichier test.php
0
theodelacharie
 
Voila mon code :

<?php
header("Content-type: text/css");
$bg_color = $this->params->get('bgcolor');
?>



#page_bg {
width: 940px;
height: 100%;
padding: 10px;
margin: 0 auto;
background: #40A497;
}
0
rbou Messages postés 94 Date d'inscription   Statut Membre Dernière intervention   15
 
et ta classe elle fait quoi ?
0