Andere stijl meegeven aan pagina's anders dan index.php
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)
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)
Missing some code
Code (php)
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
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 -->
===============
<!-- 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
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!
Op 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!
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?
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)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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>
© Lorem Ipsum
</footer>
<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>
© Lorem Ipsum
</footer>
En je about pagina zo:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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>
© Lorem Ipsum
</footer>
<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>
© 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)
1
2
3
4
5
6
7
8
9
10
11
12
13
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>
© Lorem Ipsum
</footer>
<meta charset=utf-8>
<title>Hello World</title>
<header>
<h2>Sitenaam</h2>
</header>
<!-- hier komt de rest -->
<footer>
© Lorem Ipsum
</footer>
Vervolgens plaats het geen verschilt in een view bestand:
Code (php)
1
2
3
4
5
2
3
4
5
<div id=page-wrap class=home>
<div id=slider><!-- slider --></div>
<?php include 'content/home.php' ?>
</div>
<div id=slider><!-- slider --></div>
<?php include 'content/home.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.