WauWau: Mehrere CSS / Alle Uri's der Seite ändern

Hallo,

ich überleg' mir gerade, ob ich meiner Intranets-Seite nicht ein neues Design schenke. Dabei stell ich mir unterschiedliche Skins = unterschiedliche CSS's vor.

Nun mein Problem: Wie realisiere ich die Möglichkeit, eine Seite mit unterschiedlichen CSS anzuzeigen? ggf. kommen dazu auch noch ein paar andere Bilder (z.B. Logo in anderer Schrift), daher überlege ich, ob ich es nicht mit PHP mache (meine ganze Seite ist sowieso komplett PHP, daher ist es kein Problem).

Eine möglichkeit, die mir dazu einfällt, wäre ein GET-String an jede Adresse. Also z.B. "seite.php?x-design=classic". Doch das wird blöd, wenn ich dann mal Seiten habe, die z.B. schauen, ob ein Get-String da ist und entsprechend was anzeigen - denn dann wäre immer ein Get-String da, und das ist auch nicht so toll :-/
weiteres Problem hierbei: Ich müsste PHP irgendwie dazu bewegen, allen Links auf der Seite so ein Get-teil dranzuhängen - gibt's dazu irgend eine Möglichkeit? Ich meine, bei Sessions kann er das auch.

Andere Möglichkeit wäre irgend so etwas wie Cookie beim Besucher abgespeichert, doch wäre das eine gute Lösung?

euer unwissender WauWau

  1. Hi,

    also ich würde es mit Cookies machen.

    Allerdings solltest du für alle, die Cookies deaktiviert haben, auch eine Lösung anbieten:
    Ich denke mal, die haben Pech gehabt, und können halt nur das Start-Design verwenden.

    Andy

    1. hallo,

      also ich würde es mit Cookies machen.
      Allerdings solltest du für alle, die Cookies deaktiviert haben, auch eine Lösung anbieten:
      Ich denke mal, die haben Pech gehabt, und können halt nur das Start-Design verwenden.

      Genau so habe ich es jetzt auch vor (ich habe mich entschieden). PHP kann ja überprüfen, und wenn kein Cookie da ist, wird eben das standart-design verwendet :-)

      WauWau

  2. Hello,

    Nun mein Problem: Wie realisiere ich die Möglichkeit, eine Seite mit unterschiedlichen CSS anzuzeigen? ggf. kommen dazu auch noch ein paar andere Bilder (z.B. Logo in anderer Schrift), daher überlege ich, ob ich es nicht mit PHP mache (meine ganze Seite ist sowieso komplett PHP, daher ist es kein Problem).

    Wenn Du Deine Bilder als background-image einem Element zuordnest anstatt über img-Tag einbettest kannst Du das auch über verschiedene CSS-Dateien regeln.

    Eine möglichkeit, die mir dazu einfällt, wäre ein GET-String an jede Adresse. Also z.B. "seite.php?x-design=classic". Doch das wird blöd, wenn ich dann mal Seiten habe, die z.B. schauen, ob ein Get-String da ist und entsprechend was anzeigen - denn dann wäre immer ein Get-String da, und das ist auch nicht so toll :-/

    Ja, das wäre wohl eine Variante. Andererseits: Wer sagt das Du den Wert über alle Seiten mitschleifen musst? Du könntest auch den Wert in einer Textdatei speichern, das könnte aber weniger performant sein, da ja jedes Mal der Textinhalt erst eingelesen werden muss.

    weiteres Problem hierbei: Ich müsste PHP irgendwie dazu bewegen, allen Links auf der Seite so ein Get-teil dranzuhängen - gibt's dazu irgend eine Möglichkeit? Ich meine, bei Sessions kann er das auch.

    Du könntest eine Funktion schreiben die sich aus Deiner aktuellen URL die angehängten Parameter holt (z.B. substr auf $_SERVER["REQUEST_URI"]) und dann an Deine Links auf jeder Seite dranhängt. Du musst halt einmalig Deine Inhaltsseiten, bzw. deren Templates und die PHP-Scripts umschreiben...

    Andere Möglichkeit wäre irgend so etwas wie Cookie beim Besucher abgespeichert, doch wäre das eine gute Lösung?

    Da es Intranet ist und Du von bestimmten Konfigurationen ausgehen kannst wäre das m.E. auch eine Lösung...

    Grüsse AndreD

    1. Hello,

      hola,

      Wenn Du Deine Bilder als background-image einem Element zuordnest anstatt über img-Tag einbettest kannst Du das auch über verschiedene CSS-Dateien regeln.

      Gute Idee, danke ;-)

      Ja, das wäre wohl eine Variante. Andererseits: Wer sagt das Du den Wert über alle Seiten mitschleifen musst? Du könntest auch den Wert in einer Textdatei speichern, das könnte aber weniger performant sein, da ja jedes Mal der Textinhalt erst eingelesen werden muss.

      Du meinst jetzt wahrscheinlich auf dem Server, oder? Die Idee finde ich zwar nicht schlecht, aber dann müsste ich in einer Textdatei (ich würde wahrscheinlich eher DB (MySQL) nehmen) speichern, mit der IP-Adresse kombiniert (ansonsten weiß man ja nicht, welcher surfer welches design gewählt hat) - und erstens brauche ich dann für jeden seitenaufruf eine verbindung zur db/extradateienaufruf, und das ist imho mehr Serverbelastung, die nicht sein muss, wenn man es per "rumschlepp-get" oder cookie machen kann.

      Du könntest eine Funktion schreiben die sich aus Deiner aktuellen URL die angehängten Parameter holt (z.B. substr auf $_SERVER["REQUEST_URI"])

      Also die "angehängten Parameter" hole ich mir immer über $_GET und $_POST. Ich weiß nicht wieso so viele Leute das hier im Forum anders machen !?

      und dann an Deine Links auf jeder Seite dranhängt.

      ... und genau dafür suche ich eine funktion, die äquivalent zu diesem session-baut-links um ist - oder so was ähnliches (;-)

      Du musst halt einmalig Deine Inhaltsseiten, bzw. deren Templates und die PHP-Scripts umschreiben...

      richtig. Aber das will ich so nicht tun - ist irgendwie verdammt viel Arbeit bei mehreren hundert Dateien.

      Andere Möglichkeit wäre irgend so etwas wie Cookie beim Besucher abgespeichert, doch wäre das eine gute Lösung?
      Da es Intranet ist und Du von bestimmten Konfigurationen ausgehen kannst wäre das m.E. auch eine Lösung...

      "m.E."=?
      Nun, in Anbetracht der Umstände würde ich sagen, es ist eine gute Lösung, und auch wenn die Seite "im Internet wäre", würde ich es wahrscheinlich machen, dann hätten halt die Leute, die Cookies deaktiviren, gelitten - sie schneiden sich ins eigene Fleisch.

      WauWau

      1. Hey WauWau, wie geht's Kinast?

        da ich Dir bei Deinen Fachfragen meistens nur bedingt helfen kann, freut es mich, Dich bei solchen Problem unterstützen zu können:

        "m.E."=?

        = meines Erachtens, aber ich gebe zu, "in my humble opinion" ist viel prägnanter;-)

        Gruß
        Roland

        1. Hi,

          Hey WauWau, wie geht's Kinast?

          Kinast ist "weg vom Fenster", muss ich jetzt mal zugeben.

          da ich Dir bei Deinen Fachfragen meistens nur bedingt helfen kann, freut es mich, Dich bei solchen Problem unterstützen zu können:

          Soll ich das nun positiv (=du verfügst nicht über das nötige wissen) oder negativ (=meine postings sind absolut schei**) auffassen?

          "m.E."=?
          = meines Erachtens, aber ich gebe zu, "in my humble opinion" ist viel prägnanter;-)

          Aja, klar, danke ;-)

          WauWau

          --
          Wau wau wau, wau wau, wau wau wau wau wau wau wau - Betonung kann ich leider schlecht aufschreiben ;-)
          1. Soll ich das nun positiv (=du verfügst nicht über das nötige wissen) oder negativ (=meine postings sind absolut schei**) auffassen?

            in diesem Sinne positiv, weil ich zumindest zu Themen wie Serverkonfiguration und PHP herzlich wenig beitragen kann, ich lese aber immer mal gerne mit.

            Gruß
            Roland