$_GET['versie'] in CSS ??

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2

Tom aan t Goor

Tom aan t Goor

20/12/2012 11:54:07
Quote Anchor link
@ Kris Peeters

Als ik naar mijn style.php?menu=rood ga, staat er:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
    @variables{
        menubackground: #FF0000;
    }

#menu{
    background-color: var(menubackground);
    width: 150px;
    height: 150px;
}



@Chris NVT

Ik wil juist zorgen dat de css pagina (voor een grotendeel) aanpasbaar is via de link. Zodat de gebruiker zijn eigen CSS kan bepalen (zonder database).
Als ik daarvoor dan 1.000 verschillende .css bestanden moet aanmaken kies ik liever iets anders.
 
PHP hulp

PHP hulp

19/04/2024 16:32:38
 
Chris PHP

Chris PHP

20/12/2012 11:55:35
Quote Anchor link
@Tom,

Ok duidelijk, dan kun je idd beter voor de php optie gaan ;-)

Heb je ook enig idee hoe je dit per gebruiker gaat opslaan/onthouden?
Gewijzigd op 20/12/2012 11:56:01 door Chris PHP
 
Erwin H

Erwin H

20/12/2012 11:57:58
Quote Anchor link
Die thema oplossing lijkt me in dit geval ook een mooie inderdaad. In elk geval eenvoudiger te debuggen etc. Alleen als je de gebruiker zelf kleuren wilt laten definieren wordt het wat moeilijker.

Ander punt bij het maken van dynamische CSS, let ook op caching. Het nadeel van dynamische CSS is dat je server weer meer werk krijgt doordat hij niet simpel een bestand hoeft terug te sturen, maar nu opeens ook php code moet gaan uitvoeren. Eindresultaat is echter vaak hetzelfde (afhankelijk van de parameters) en dus een mooie gelegenheid om het bestand flink lang in de cache te houden. Omdat je het via php doet, kan je dus ook heel envoudig caching headers meesturen.
 
Kris Peeters

Kris Peeters

20/12/2012 12:08:22
Quote Anchor link
Die cache: een simpele oplossing (die dus ook werkt voor andere, dynamisch gegenereerde documenten ), is om een extra, unieke GET-variabele mee te sturen die niets anders moet doen dan zorgen voor een andere url.
Een andere url is een signaal dat de browser vooral niet in de cache mag kijken.

bv. met time()
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo '<link rel="stylesheet" type="text/css" href="www.blabla.nl/style.php?menu=' . $_GET['menu'] . '&dummy=' . time() . '" /> ';
?>
 
Tom aan t Goor

Tom aan t Goor

20/12/2012 12:08:50
Quote Anchor link
Chris NVT op 20/12/2012 11:55:35:
@Tom,

Ok duidelijk, dan kun je idd beter voor de php optie gaan ;-)

Heb je ook enig idee hoe je dit per gebruiker gaat opslaan/onthouden?


Nu ik er even goed over nadenk moet ik wel met een database werken, dus kan ik gewoon net zo goed de code rechtstreeks in mijn database opslaan. Zonder mijn .css/.php bestand te gebruiken als 'database'.
 
Chris PHP

Chris PHP

20/12/2012 12:18:30
Quote Anchor link
@Tom,

Ik neem aan dat dit dus alleen voor aangemelde gebruiker is? Aangezien je het in een db wil opslaan. Is het dan niet makkelijker om gewoon een 'gebruikersprofiel' te maken?

Dus wanneer een gebruiker een account aanmaakt, een folder aanmaken onder users met de gebruikersnaam en dan daar een 'custom' css wegschrijven? Want hoe ga je anders de gegevens in je db wegschrijven? Gewoon als raw input zonder escapes?
Gewijzigd op 20/12/2012 12:19:45 door Chris PHP
 
Tom aan t Goor

Tom aan t Goor

20/12/2012 12:28:04
Quote Anchor link
Chris NVT op 20/12/2012 12:18:30:
@Tom,

Ik neem aan dat dit dus alleen voor aangemelde gebruiker is? Aangezien je het in een db wil opslaan. Is het dan niet makkelijker om gewoon een 'gebruikersprofiel' te maken?

Dus wanneer een gebruiker een account aanmaakt, een folder aanmaken onder users met de gebruikersnaam en dan daar een 'custom' css wegschrijven? Want hoe ga je anders de gegevens in je db wegschrijven? Gewoon als raw input zonder escapes?


Het is inderdaad alleen voor aangemelde gebruikers.
Hoe ik het dan 'het beste' ga uitlezen, moet ik nog even over na denken. Ik denk wel dat er inderdaad een mapje komt voor de css bestanden voor de gebruikers.
 

Pagina: « vorige 1 2



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.