Andere stijl meegeven aan pagina's anders dan index.php

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Joep van Dongen

Joep van Dongen

24/06/2012 21:44:00
Quote Anchor link
Hallo,

Ik ben met een website bezig en ik werk daar met cases op de index.php. De index pagina heb ik een stijl meegeven en helemaal opgemaakt nu wil ik de divs in de about pagina anders stijlen maar op de manier waarop ik het nu doe krijgt de about.php ook de stijl mee omdat de case tussen de div staat. Nu is de index.php helemaal goed qua layout maar ik wil dat de andere pagina's een andere stijl / layout hebben (div op andere positie en andere breedte). Zoals ik al zei werk ik met een switch en cases en case 2 is bijvoorbeeld About.php.

Hoe kan ik deze helemaal los stijlen van de index.php want hij neemt ook de stijl mee van index.php en dat is juist wat ik niet wil.

Ik wil daarin tegen wel gewoon met de cases blijven werken. Dus niet allemaal losse php bestanden.

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
                 <div id="main-home-right">
              
                <?php
    if(isset($_GET['p']))
    {

        switch($_GET['p'])
        {
            case
"1":
            default:

                include "modules/content.php";
                break;
            case
"2":
                include "modules/about.php";
                break;
        }
    }

    else
    {
        include "modules/content.php";
    }

?>
</div>  


Als je zo naar de code kijkt is het logisch dat hij de stijl van index.php ook meepakt bij about.php maar hoe kan ik dit op een professionele manier omzeilen?

Alvast bedankt voor de hulp

Groetjes

Joep

Toevoeging op 24/06/2012 21:49:25:

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
<div id="main-home-right">
<?php
    if(isset($_GET['p']))
    {

        switch($_GET['p'])
        {
            case
"1":
            default:

                include "modules/content.php";
                break;
            case
"2":
                include "modules/about.php";
                break;
        }
    }

    else
    {
        include "modules/content.php";
    }

?>
</div>  


Missing some code
 
PHP hulp

PHP hulp

25/11/2024 09:06:22
 
Wouter J

Wouter J

24/06/2012 21:50:04
Quote Anchor link
Maak een index view en een about view, hierin bepaal je hoe het eruit komt te zien, waarbij je de content weer laad uit modules/about.php of modules/content.php. Deze view bestanden laad je vervolgens in:
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
27
28
29
30
31
32
Views/index.php
===============
<!-- te gekke index HTML code -->
<?php include 'modules/content.php' ?>
<!-- andere index HTML code -->

Views/about.php
===============
<!-- jou about HTML code -->
<?php include 'modules/about.php' ?>
<!-- andere about HTML code -->

index.php
=========
<!-- header -->
<?php
if (isset($_GET['p'])) {
    switch ($_GET['p']) {
        case
"1":
        default:

            include "Views/index.php";
            break;

        case
"2":
            include "Views/about.php";
            break;
    }
}
else {
    include "modules/content.php";
}

?>

<!-- footer -->


PS: Gebruik liever geen namen als 1 en 2 maar geef ze een echte naam van de pagina, zoals 'home' en 'about'
Gewijzigd op 24/06/2012 21:50:43 door Wouter J
 
Obelix Idefix

Obelix Idefix

24/06/2012 21:50:17
Quote Anchor link
Op http://www.pfz.nl/forum/topic/7850-andere-stijl-layout-meegeven-aan-paginas-indexphp/ wordt dezelfde vraag gesteld.

Even los van je vraag: waar controleer je of $_GET['p'] wel een getal is en het 1 of 2 is? Voeg aan je switch in ieder geval een default toe!
 
Joep van Dongen

Joep van Dongen

24/06/2012 22:26:10
Quote Anchor link
Bedankt voor de snelle reactie maar ik volg je niet helemaal. Je haalt nu mijn case functie uit de div en je wilt dat ik met View bestanden verschillende stijlen meegeef aan de pagina's?
 
Wouter J

Wouter J

25/06/2012 09:22:26
Quote Anchor link
Quote:
Even los van je vraag: waar controleer je of $_GET['p'] wel een getal is en het 1 of 2 is? Voeg aan je switch in ieder geval een default toe!

Hij heeft een default toegevoegd, zie regel 8.

Joep, wat je nu doet is dit:
Je hebt nu 2 soorten bestanden, bestanden met de content en bestanden die laten zien hoe de body eruit ziet.
Stel je homepagina ziet er zo uit:
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
<!doctype html>
<meta charset=utf-8>
<title>Hello World</title>

<header>
  <h2>Sitenaam</h2>
</header>

<div id=page-wrap class=home>
    <div id=slider><!-- slider --></div>

    <?php include 'content/home.php' ?>
</div>

<footer>
   &copy; Lorem Ipsum
</footer>

En je about pagina zo:
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
<!doctype html>
<meta charset=utf-8>
<title>Hello World</title>

<header>
  <h2>Sitenaam</h2>
</header>

<div id=page-wrap class=about>
    <?php include 'content/about.php' ?>
</div>

<footer>
   &copy; Lorem Ipsum
</footer>

(dus zonder slider).

Dan heb je in dit geval 1 basis index file met het geen in beide codes gelijk is, de head, header en footer:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<!doctype html>
<meta charset=utf-8>
<title>Hello World</title>

<header>
  <h2>Sitenaam</h2>
</header>

<!-- hier komt de rest -->

<footer>
   &copy; Lorem Ipsum
</footer>


Vervolgens plaats het geen verschilt in een view bestand:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<div id=page-wrap class=home>
    <div id=slider><!-- slider --></div>

    <?php include 'content/home.php' ?>
</div>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<div id=page-wrap class=about>
    <?php include 'content/about.php' ?>
</div>


In de index.php heb je nu de basis, layout genaamd, vervolgens laad je daar de geschikte view in, home of about, in die view zit de HTML code die veranderd en die laad vervolgens een bestand met de tekst/content in.
 



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.