28172 sujets

CSS et mise en forme, CSS3

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
Bonjour,

Quel est le code généré au juste? Tu as chargé ton fichier /css/css.php directement dans le navigateur pour vérifier que tu génères bien le code attendu?

C'est une habitude à prendre lorsque tu travailles sur de la programmation côté serveur (en PHP, Python ou tout ce qu'on veut): toujours vérifier que le résultat (code HTML, CSS, XML ou autre produit) et envoyé au navigateur correspond aux attentes.
Modifié par fvsch (13 May 2011 - 15:28)
Bonjour,

visiblement, le code ligne 3 est pas bien digéré... Voila ce que m'affiche mon navigateur :

<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 />

Ca te dis quelques chose ?
Tu utilise le mot clé $this en dehors du contexte objet. $this est censé se référé à l'objet courant et est utilisé au sein d'une classe.

Exemple :


class MaClasse {

 private $var;

 public function myMethod() {
  $this->var = 1;
 }
}

Modifié par jb_gfx (13 May 2011 - 16:16)
Oula... Je ne suis pas sur d'être assez bon pour mettre en pratique ton conseil.

Concretement, comment je fais pour appeller le paramètre bgcolor qui est stocké dans mon param.ini ?

Merci beaucoup.
as-tu lu le liens de jb_gfx ? Car tout est expliqué dedans.

Si c'est la notion de parse que tu ne comprend pas je vais tenter de t'expliquer en quelques mots :

Quand on "parse", on récupère un flux de données (texte, contenu balisé, etc.) et on en fait un objet hiérarchisé pour l'environnement dans lequel on se trouve (un tableau ou "array" pour le php par exemple).

Voila je pense avoir fait simple (j’espère ^^) et te conseil de nouveau de bien consulter le lien donné par jb_gfx, notamment les exemples donnés par les rédacteurs et ceux donnés aussi par les commentateurs.

good luck Smiley cligne
Modifié par ptitvincent (17 May 2011 - 17:48)