PHP in CSS-Datei verwenden

  • Hallo,

    ich stehe vor einem Problem, was mich derzeit ziemlich Nerven kostet; habe gegoogelt, rumprobiert, Anleitungen geschmökert und nix hat geholfen, entweder ich bin zu blöd, oder es geht nicht so einfach wie es sich anhört. na gut, lange Rede kurzer Sinn..

    Ich würde den Besuchern meiner Homepage gerne ermöglichen, bestimmte Schriftarten und -farben selbst zu bestimmen. Ich werwende eine CSS Datei und bekomme es nicht gebacken, dort hinein Variablen zu übergeben.

    Ich poste mal wie weit (oder wenig weit) ich bisher mit meinen Versuchen gelangt bin und hoffe, mir kann jemand etwas auf die Sprünge helfen:

    Der Aufruf des CSS-Files erfolgt mit:

    echo "<link href='tech/css.php?sf=" . $_SESSION ['schriftfarbe'] . "&sa=" . $_SESSION ['schriftart'] . "' rel='stylesheet' type='text/css'>";

    Die Session-Variablen wurden beim Seitenaufruf bereits früher geladen und kommen aus einer mySQL Datenbank.

    Das CSS-File selbst sieht derzeit wie folgt aus:

    <?php

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

    $sa = $_GET ['sa'];
    $sf = $_GET ['sf'];


    //$cssecho = ".normal {
    // font-family:" .$_GET ['sa'] . ";
    // font-size: 14px;
    // color:" . $_GET ['sf'] . ";
    //}";

    $cssecho = ".normal {
    font-family: Arial;
    font-size: 14px;
    color: $sf;
    }";

    echo $cssecho;

    ?>

    So wies jetzt steht wird die Schrift .normal korrekt angezeigt, sobald ich aber die auskommentierten Zeilen aktiviere, wird die Schrift nicht mehr angezeigt, weder bei Verwendung von $_GET als auch bei Verwendung als "normale" Variable.

    Vorab schon mal vielen Dank an all jene, die sich meiner Problemstellung annehmen...

    Grüße

    Ascy

    Zu wissen, wie man etwas macht ist einfacher als es zu tun.

  • Eine kleiner Schnippsel wie es aussehen könnte.


    Achtung! - nicht getestet. Du kannst das ganze natürlich nach deinem Wunsch bearbeiten.

    So hast du eine Kontrolle was für Farben und Schriftarten man wählen darf.
    Zusätzlich liest du direkt die Session aus und nicht GET Parameter.
    das sans-serif kannst du auch mit serif auswechseln, falls die gewählte Schrift nicht vorhanden ist wird so eine "Fallback"-Schrift gewählt.

  • Oh, da bleibt mir nur eins zu sagen...Danke, es klappt so wie ich mir das vorstelle.

    Ich hatte das mit der Session-Variable auch schon probiert, aber kein "session_start()" in die CSS-Datei geschrieben. Ich dachte, da das schon woanders aufgerufen wurde, muss ich es kein zweites Mal machen.

    Jedenfalls vielen Dank für Deine Mühe, hätte ich alleine nicht hin bekommen...

    Grüße

    Ascy

    Zu wissen, wie man etwas macht ist einfacher als es zu tun.