PHP-Script per CSS aufrufen

Status
Nicht offen für weitere Antworten.

Hatachy

Erfahrenes Mitglied
HI !

Ich wollte gerne meine CSS-Datei durch PHP parsen lassen, sprich einige Platzhalter durch Verzeichnisse ersetzen um die immer einsetzbar zu machen (vom Prinzip her).

Habe lange gesucht. Im Forum nichts gefunden. Dann doch was gefunden und zwar beim Invisionboard (http://forums.invisionpower.com/)

Dort steht folgendes im HTML-Quelltext:
Code:
<style type='text/css' media="all">
@import url(css.php?d=7_1.css);
</style>

Ich scheine wohl zu blöd zum kopieren zu sein. Normales CSS aufrufen kann ich damit auch, aber wieso führt er bei mir nie das PHP-Script aus

Kennt sich damit jemand aus bzw. weiß wo der Fehler liegt

Danke schonmal.
 
kann dir eventuell sagen woran das liegt.

PHP ist serverseitig und HTML (CSS) Clientseitig.
Also muss erst PHP ausgeführt werden und dann kann der Rest geparst werden.
Also wenn du verlangst, dass er den Clientseitigen Code durchgeht indem du per CSS eine URL zu einer PHP seite angibst, dann kannst du getrost lange drauf warten, dass er ihn ausführt. Das wird er nämlich nicht.
 
also ehrlich gesagt weiß ich nciht was du willst. ich weiß wie PHP und wie CSS funktionieren, wenn man das so sagen kann. Und darin ein PHP Script aufzurufen, seh ich auch kein Problem, wie ist es denn mit dynamischen Bildern, die im Endeffekt auch per PHP-Script "bearbeitet" werden. Da liegt ja nicht das Problem. Meine css.php funktioniert auch, bei aufruf sendet sie als Mime-Typ text/css den geänderten CSS-Code zurück. Nur irgendwie scheinen die Browser (habs mitm IE und mit Mozilla getestet) zu sehen, dass die Endung nicht .css sondern .php ist und somit garnix zu machen.

Nur beim Invisionboard funktioniert es, und zwar genauso. Das isses ja was mich wundert. Scheine halt zu blöd zum kopieren zu sein.
 
Den rot markierten Text einfach auf jede Seite (muss mit .php enden) einfügen.

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<?php include("config.php"); ?> 
<html>
<head>
<style>
<?php echo $style; ?>
</style> 
</head>
...

dann brauchst du noch ne "config.php"-Datei

Code:
<?php

$style = "
//Hier deine CSS-Daten einfügen
body { color: #FF0000;
}

a:hover {
	font-weight: bold;
	color: #FF2F2F;
}
a {
	color: #000000;
	text-decoration: none;
}
body {
	font-family: Arial, Helvetica, sans-serif;
}
//ENDE mit einfügen :)
";

?>

greets pike aka gullasch
 
is ja nett, aber sorry, so könnt ichs zwar machen, die Idee hat ich auch schon, aber möchte die externe Datei schon beibehalten, da ich CSS-Deklarationen in HTML-Datein absolut störend finde. :rolleyes:

Ich weiß ja, dass es geht, vielleicht hab ich auch was im HTML-Quelltext vom IPB übersehen. Wäre nett, wenn da mal jemand schaut, es geht mir wirklich um diese Methode.
 
Du könntest mal das import weglassen und stattdessen den ink-Tag verwenden:
PHP:
<link rel="stylesheet" type="text/css" href="datei.php">

Das klappt bei mir eigentlich immer.
Notfalls einfach noch folgendes in die PHP-Datei rein:
PHP:
header( "Content-type: text/css" );
 
Code:
<style type='text/css' media="all">
<?php include("style.css"); ?>
</style>
 
Den Header befehl sende ich (s.o.), dennoch, auch so funktioniert der aufruf nicht. Es tut sich rein garnix.

egal ob mit Mime Angabe oder ohne, es erscheint keine Ausgabe (habe zum Test ne Echo Ausgabe eingebaut in die css.php).
ohne Echo fehlen alle Styles, was man ja leicht am weißen hintergrund z.B. erknennen kann.

@gulasch: was soll das sein ?
 
Status
Nicht offen für weitere Antworten.

Neue Beiträge

Zurück