Čtení cookies v CSS souboru?

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Zamčeno
Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: 16 úno 2013 13:03
Kontaktovat uživatele:

Čtení cookies v CSS souboru?

Příspěvek od kuxik009 »

Zdravím,
mám stránku, na které si uživatel může zvolit buďto jedno z pár připravených témat, nebo si "namíchat svoje". Funguje to takto: Uživatel zadá do políčka HTML kódy barev u pozadí, odkazů a nadpisů. Ty se potom uloží do cookies (ovšem místo # je %23). Mám různé předpřipravené soubory (zluty.css, cerny.css atd.) a mezi nimi i vlastni.css. Jenže když do toho souboru napíšu toto:

Kód: Vybrat vše

body
 {
  background-color: <?php echo str_replace ("%23", "#", $_COOKIE["pozadi"]); ?>;
  font-family: Verdana, Tahoma, sans-serif;
  font-size: 11pt;
  background-repeat: repeat;
  height: 100%;
 }

a
 {
  text-decoration: underline;
  color: <?php echo str_replace ("%23", "#", $_COOKIE["url"]); ?>;
 }

h1
 {
  margin-bottom: 25px;
  font-size: 20pt;
  color: <?php echo str_replace ("%23", "#", $_COOKIE["nadpisy"]); ?>;
 }
a aktivuji styl vlastni.css, pozadí se vykreslí bíle, nadpisy černě a odkazy modře a po kliknutí fialově - zkrátka standartní nastavení. Nevíte někdo prosím, jak tento problém vyřešit? Samozřejmě by šlo u každého nadpisu psát if (isset ($_COOKIE["nadpisy"])) echo "<font color=$_COOKIE['nadpisy']>"; atd., ale to mi přijde pracné. Děkuji předem.
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
ABBC3_SPOILER_SHOW
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Čtení cookies v CSS souboru?

Příspěvek od CZechBoY »

čus,
pojmenuj ten soubor jako vlastni.css.php, kterej můžeš podstrčit přes htaccess a mod_rewrite

Kód: Vybrat vše

RewriteEngine On
RewriteRule vlastni\.css$ vlastni\.css\.php [L]
 
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: 16 úno 2013 13:03
Kontaktovat uživatele:

Re: Čtení cookies v CSS souboru?

Příspěvek od kuxik009 »

Promiň, ale nerozumím Ti. V programování jsem zatím celkem začátečník (učím se něco málo víc než 1/2 roku). Styl načítám takto:

Kód: Vybrat vše

<link href="<?php echo $_COOKIE["barva"]; ?>.css" rel="stylesheet" media="all">
Co mám teda přesně udělat? Asi přejmenovat ten soubor, a potom dát podmínku:

Kód: Vybrat vše

if ($_COOKIE["barva"] != "vlastni")
 <link href="<?php echo $barva; ?>.css" rel="stylesheet" media="all">
  else
   <link href="<?php echo $barva; ?>.css.php" rel="stylesheet" media="all">
A to stačí? Nebo cos myslel tím
...kterej můžeš podstrčit přes htaccess a mod_rewrite...
? Díky.
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
ABBC3_SPOILER_SHOW
Uživatelský avatar
CZechBoY
Master Level 9.5
Master Level 9.5
Příspěvky: 8813
Registrován: 20 srp 2008 14:02
Bydliště: Brno
Kontaktovat uživatele:

Re: Čtení cookies v CSS souboru?

Příspěvek od CZechBoY »

Pojmenuj ten soubor nějak aby se jmenoval s koncovkou .php. Pak můžeš používat PHP skriptování.
PHP, Nette, MySQL, C#, TypeScript, Python
IntelliJ Idea, Docker, Opera browser, Linux Mint
iPhone XS
Raspberry PI 3 (KODI, Raspbian)
XBox One S, PS 4, nVidia GeForce NOW
Uživatelský avatar
kuxik009
Level 2.5
Level 2.5
Příspěvky: 338
Registrován: 16 úno 2013 13:03
Kontaktovat uživatele:

Re: Čtení cookies v CSS souboru?

Příspěvek od kuxik009 »

Když jsem to přejmenoval na vlastni.css.php a načetl jsem to tou podmínkou výše, pořád to nefunguje.

--- Doplnění předchozího příspěvku (18 Dub 2014 20:34) ---

Super, už to funguje! Vyřešil jsem to takto:
1. Přejmenoval vlastni.css na vlastni.css.php
2. Do souboru, kde se načítá vzhled přidal podmínku:

Kód: Vybrat vše

if ($barva == "vlastni")
	 {?>
	 <style type="text/css">
	 <?php require "vlastni.css.php"; ?>
	 </style><?php
	 }
	  else?>
	   <link href="<?php echo $barva; ?>.css" rel="stylesheet" media="all">
Díky hlavně CzechBoyovi za to, žes mi poradil ten soubor přejmenovat. Bez tebe bych na to nepřišel. Díky!
Moje portfolio
Český jazyk je freeware, ale nikoliv open source!!!

Sestava:
ABBC3_SPOILER_SHOW
Zamčeno
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Blokování stahovaných souborů
    od Riviera kid » » v Windows 11, 10, 8...
    10 Odpovědi
    12078 Zobrazení
    Poslední příspěvek od Riviera kid
  • Velikost souboru a složek na disku
    od L.L » » v Vše ostatní (sw)
    5 Odpovědi
    9631 Zobrazení
    Poslední příspěvek od L.L

Zpět na „Programování a tvorba webu“