Jetzt kostenlos Anmelden!

reddevil82 Männlich

BFM Stream Cheffe

Beiträge: 1 712

Geschlecht: Männlich

PHPKIT Version: 1.6.5

1

Dienstag, 8. Februar 2011, 23:34

php vars in css

Hallo Mädels

Brauche mal eure Hilfe. Um gleich vorweg zusagen es geht nicht ums Kit.

Ich möchtein einer css Datei php Variablen nutzen.

Inhalt der index.htm:

HTML

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


Inhalt der css:

Cascading Style Sheet

1
2
3
4
5
6
7
8
9
10
11
12
13
#logo
	{
		background-image: url(../images/style1.jpg);
		background-repeat: no-repeat;
		width:	140px;
		height: 170px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 0px;
		color: $textcolor;
		font-size: small;
		position: relative;
	}


in der php datei:

PHP-Quelltext

1
2
3
4
header('Content-type: text/css');
$textcolor'#FF0000';
header('Expires: '.gmdate('D, d M Y H:i:s',time() + (60 60 24 10)).' GMT');
echo $content preg_replace('/\$([\w]+)/e','$0',@file_get_contents('css/style1.css'));


So dieser Code geht ja und die Var $textcolor wird in der css Datei übergeben.

Aber mache ich das z.b. mit $_GET['var'] geht es seltsamerweise nicht:

PHP-Quelltext

1
2
3
4
header('Content-type: text/css');
$textcolor='#'.$_GET['var'];
header('Expires: '.gmdate('D, d M Y H:i:s',time() + (60 60 24 10)).' GMT');
echo $content preg_replace('/\$([\w]+)/e','$0',@file_get_contents('css/style1.css'));


Das ganze rufe ich dann mit foo.php?var=FFFFF auf und es geht nicht. Jemand ne Idee warum?
Seit 02.07.2010 Papa einer süssen Tocher !!!!

http://www.burnerfm.de

Mit den besten Hits der 80´s, 90´s und von heute. Plus einigen PHPKit Addons... uvm.
  • Zum Seitenanfang
  • Zum Seitenende

Dirk Kántor Männlich

aká Dooki

Beiträge: 2 074

Geschlecht: Männlich

PHPKIT Version: keine

2

Dienstag, 8. Februar 2011, 23:42

was rufst du mit foo.php?var=ffffff auf?

deine seite, oder die css datei in den meta angaben?

Wieso machst du das so kompliziert mit file_get_contents() ?

Muss es denn eine .css datei sein? oder kannst nicht einfach nur die php datei nehmen, in der alle deine angaben drin sind?

Um den code zu verstehen:
woher weiss deine abfrage denn, dass er die Variable $textcolor nutzen soll?
:thumbsup:    :thumbsup:       *tc*       :thumbsup:    :thumbsup:
8o           Achtung: Dirk Kántor ist unterwegs!           8o
Er verteilt gerne Verwarnungen ohne vorher darüber diskutiert zu haben.
  • Zum Seitenanfang
  • Zum Seitenende

reddevil82 Männlich

BFM Stream Cheffe

Beiträge: 1 712

Geschlecht: Männlich

PHPKIT Version: 1.6.5

3

Mittwoch, 9. Februar 2011, 00:13

ich habe ein php Datei namens stylesheet.php mit diesem Inhalt:

PHP-Quelltext

1
2
3
4
header('Content-type: text/css');
$textcolor='#'.$_GET['var'];
header('Expires: '.gmdate('D, d M Y H:i:s',time() + (60 60 24 10)).' GMT');
echo $content preg_replace('/\$([\w]+)/e','$0',@file_get_contents('css/style1.css'));


und wie man sieht ist ja dort auch ein $_GET enthalten

diese rufe ich ja in der index.htm mit <link href="./stylesheet.php" type="text/css" rel="stylesheet" />

somit ist es ja eine dynamisch generierte css Datei
Seit 02.07.2010 Papa einer süssen Tocher !!!!

http://www.burnerfm.de

Mit den besten Hits der 80´s, 90´s und von heute. Plus einigen PHPKit Addons... uvm.
  • Zum Seitenanfang
  • Zum Seitenende

Dirk Kántor Männlich

aká Dooki

Beiträge: 2 074

Geschlecht: Männlich

PHPKIT Version: keine

4

Mittwoch, 9. Februar 2011, 00:58

was rufst du mit foo.php?var=ffffff auf?


rufst du damit deine homepage auf, oder nur die stylesheet.php?

wenn du die homepage damit aufrufst, dann kann es nicht gehen, da die stylesheet.php die GET Übergaben der Homepage nicht kennen kann, sie kennt nur GET Übergaben, wenn du der stylesheet.php etwas übergibst....

anders wäre es wnen du die stylesheet per include einbindest, dann würde sie GET kennen.. SO nur als Stylesheet in den Meta angaben.. woher soll se das wissen?


Mach es dir einfacher, wenn es dir reicht eine stylesheet.php zu haben ohne einer speziellen css datei:

PHP-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
header('Content-type: text/css');
$textcolor='#'.$_GET['var'];
header('Expires: '.gmdate('D, d M Y H:i:s',time() + (60 60 24 10)).' GMT');

...

diverse sonstige angaben wenn nötig

...

?>
#logo
    {
        background-image: url(../images/style1.jpg);
        background-repeat: no-repeat;
        width:    140px;
        height: 170px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 0px;
        color: <?=$textcolor?>;
        font-size: small;
        position: relative;
    }


du kommst aber nicht dran vorbei, deine stylesheet.php wie folgt aufzurufen:

HTML

1
<link href="./stylesheet.php?var=ffffff" type="text/css" rel="stylesheet" />
:thumbsup:    :thumbsup:       *tc*       :thumbsup:    :thumbsup:
8o           Achtung: Dirk Kántor ist unterwegs!           8o
Er verteilt gerne Verwarnungen ohne vorher darüber diskutiert zu haben.
  • Zum Seitenanfang
  • Zum Seitenende

reddevil82 Männlich

BFM Stream Cheffe

Beiträge: 1 712

Geschlecht: Männlich

PHPKIT Version: 1.6.5

5

Mittwoch, 9. Februar 2011, 01:59

Danke Dooki habe es aber jetzt anderst gelöst.

eine ganz normale css Datei mit folgenden Inhalt:

Cascading Style Sheet

1
2
3
4
5
6
7
8
9
10
11
12
#logo
	{
	background-repeat: no-repeat;
	width:	140px;
	height: 170px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0px;
	font-size: small;
	position: relative;
	font-weight: bold;
	}


und die variabeln steuere ich jetzt über php mit:

PHP-Quelltext

1
2
3
4
5
6
        $site_tags.= '<style type="text/css">
                    <!--
                    #logo{ background-image: url(./images/'.$file.'.jpg); color: '.$titleinfo.'; }
                    #ticker { color: '.$ticker.'; }
                    -->
                    </style>';


Und funktioniert einwandfrei und ist 100% valide.


OffTopic
Das ganze kommt daher da ich mich derweilen intensiver mit css beschäftige und so gut wie möglich alles mit div statt table machen will. Klappt bis jetzt auch sehr gut eigentlich. Auch wenn ich öfters mal bei css4you nachschauen muss :D
Seit 02.07.2010 Papa einer süssen Tocher !!!!

http://www.burnerfm.de

Mit den besten Hits der 80´s, 90´s und von heute. Plus einigen PHPKit Addons... uvm.
  • Zum Seitenanfang
  • Zum Seitenende