CSS

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Richard

Richard

18/10/2006 21:41:00
Quote Anchor link
Ik ben bezig met een website waarbij we feestdagen layouts gaan handteren. Dus als het kerst is dan moet hij een kerststyle hebben en als het sinterklaas is een sintstyle.

Is dit mogelijk???

Dan wil ik ook nog dat bijvoorbeeld de sintstyle van 28 november tot 6 december loopt en dat kerststyle van 15 december tot 01 januari. En als er geen feestdag is de normale layout handteerd

Ik doe het nu handmatig en doe dat alsvolgt:

Webpagina:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?
<head>
< ?
include '../style.php';? >
<
/head
?>


Style pagina:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
<link href=[code]<?php echo'"http://'.$_SERVER[HTTP_HOST].'/css_style.css"' ? > rel="stylesheet" type="text/css">
<
link href=< ?php echo'"http://'.$_SERVER[HTTP_HOST].'/css_text_style.css"' ? > rel="stylesheet" type="text/css">
?>
Gewijzigd op 01/01/1970 01:00:00 door Richard
 
PHP hulp

PHP hulp

19/11/2024 06:22:33
 
Bart van der veen

bart van der veen

18/10/2006 21:50:00
Quote Anchor link
ja kijk ff bij date() in de php.net hulp en maar er een if statement van
 
Joren de Wit

Joren de Wit

18/10/2006 21:55:00
Quote Anchor link
Ik zou de styles in een database zetten. Bijvoorbeeld een tabel als:

styles
====
id (int)
style (varchar)
bestandsnaam (varchar)
begin (date)
eind (date)

Op die manier kun je met een query de style selecteren.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
$sql
= "
    SELECT bestandsnaam
    FROM styles
    WHERE CURDATE() BETWEEN begin AND eind
    "
;

if(!$res = mysql_query($sql))
{

    trigger_error(mysql_error());
}

else
{
    if(mysql_num_rows($res) == 1)
    {

        $row = mysql_fetch_assoc($res);
        // $row['bestandsnaam'] geeft nu de bestandsnaam van je style.
        // Gebruik deze dus om je style te laden.

    }
    else
    {
        // Geen of meerdere styles geselecteerd
        // Gebruik standaard layout.

    }
}

?>


ps. Waarom een database gebruiken? Dan kun je eenvoudig styles toevoegen/verwijderen zonder dat je je code hoeft te wijzigen.
 
Bart van der veen

bart van der veen

18/10/2006 22:08:00
Quote Anchor link
Hulde aan Blanche,
dat is een bijzonder cleane oplossing, ik heb weer een regel sql geleerd!
 
Richard

Richard

18/10/2006 22:32:00
Quote Anchor link
@Blanche, Hij werkt :) thx, behalve 1 ding niet... ik gebruik namelijk 2 stylessheets voor 1 layout, 1 voor de plaatjes e.d. en 1 voor de text. Hoe pas ik dat aan? want nu snapt hij alleen nog maar 1
 
Joren de Wit

Joren de Wit

18/10/2006 22:34:00
Quote Anchor link
Breid je tabel met 1 veld uit:

styles
====
id (int)
style (varchar)
bestandsnaam_plaatjes (varchar)
bestandsnaam_text (varchar)
begin (date)
eind (date)

En dan de query
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
SELECT bestandsnaam_plaatjes, bestandsnaam_text
FROM styles
WHERE CURDATE() BETWEEN begin AND eind


Verder kun je het zelf wel aanpassen denk...
 
Jan Koehoorn

Jan Koehoorn

18/10/2006 22:35:00
Quote Anchor link
Dan zet je bijvoorbeeld het thema in je DB. In een switch kun je dan je css bestanden includen.
 
Richard

Richard

18/10/2006 22:41:00
Quote Anchor link
Super het werkt... thx
 
Joren de Wit

Joren de Wit

18/10/2006 22:47:00
Quote Anchor link
@Jan: persoonlijk zou ik ook de bestandsnamen van de verschillende stylesheets in mn database opnemen. Bij een wijziging van die namen hoef ik dan niet mn php code in te duiken, maar kan ik deze direct in de database wijzigen.

Nog mooier zou zijn als je de opmaak van de bestandsnamen altijd hetzelfde houdt, dus bijvoorbeeld [style]_pics.css en [style]_text.css. Op die manier hoef je alleen de style nog maar in de database op te slaan...
 
Jan Koehoorn

Jan Koehoorn

18/10/2006 22:51:00
Quote Anchor link
Dat zou inderdaad zo kunnen. En als je het DB technisch helemaal correct wilt doen, kun je drie tabellen maken:

themes
------------
id
themenaam

styles
------------
id
stylenaam

themes_styles
-----------
theme_id
style_id

De derde tabel is dan een koppeltabel omdat de relatie thema - stylesheet van het type veel op veel is.
 



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.