Meerdere pagina's in 1 content
Hoe voeg ik meerdere pagina's toe in een content!
Gesponsorde koppelingen
Inhoudsopgave
22 reacties op 'Meerdere pagina's in 1 content'
Gesponsorde koppelingen
Maak van je php stukje even dit, dan zal het al wat beter en veiliger zijn.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?php
if(isset($_GET['page'])){
switch($_GET['page'])
{
case '1': $content = 'includes/page1.php'; break;
case '2': $content = 'includes/page2.php'; break;
case 'news': $content = 'includes/news.php'; break;
default: $content = 'includes/default.php'; break;
}
} else $content = 'includes/default.php';
?>
if(isset($_GET['page'])){
switch($_GET['page'])
{
case '1': $content = 'includes/page1.php'; break;
case '2': $content = 'includes/page2.php'; break;
case 'news': $content = 'includes/news.php'; break;
default: $content = 'includes/default.php'; break;
}
} else $content = 'includes/default.php';
?>
Het gebruik van page=[getal] maakt je pagina's niet echt zoekmachine vriendelijk.
Het beste is om de omschrijving van je pagina, bijvoorbeeld de titel, in de link te verwerken. Google neemt dit veel hoger op in relevantie..
vb: index.php?page=php_beginners_handleiding
ipv index.php?page=1 (waar dan de handleiding zou staan)
Het beste is om de omschrijving van je pagina, bijvoorbeeld de titel, in de link te verwerken. Google neemt dit veel hoger op in relevantie..
vb: index.php?page=php_beginners_handleiding
ipv index.php?page=1 (waar dan de handleiding zou staan)
@ Dennis Mertens:
wat maken die haakjes nou uit :P
dat is gewoon t? erg. Alsof je gewoon iets zoekt om op te zeuren...
"ow, mijn post is niet vol genoeg... zie ik nog teveel whitespace daar?...
oow! haakjes om de string achter include! daar ga ik over zeuren!"
sjonge jonge man...
en het hoeft niet persee een integer te zijn. Je kan ook prima teksten gebruiken.
En als je toch al bezig bent: ?page=1
Dan wordt er aan $_GET['page'] een STRING gegeven met daarin een 1. Dus geen integer.
dus quotes om die 1 horen dus eigenlijk wel.
Test zelf maar:
test.php
test.php?page=1 's output:
Hier is te zien dat ["page"] toegewezen is aan een tekenreeks ("string") met 1 teken, namelijk: "1".
Echt verschrikkelijk hoe men tegenwoordig allemaal loopt te zeuren. Ik vind dit systeem zo slecht nog niet.
Zoals altijd wil iedereen gewoon wat te zeuren hebben.
wat maken die haakjes nou uit :P
dat is gewoon t? erg. Alsof je gewoon iets zoekt om op te zeuren...
"ow, mijn post is niet vol genoeg... zie ik nog teveel whitespace daar?...
oow! haakjes om de string achter include! daar ga ik over zeuren!"
sjonge jonge man...
en het hoeft niet persee een integer te zijn. Je kan ook prima teksten gebruiken.
En als je toch al bezig bent: ?page=1
Dan wordt er aan $_GET['page'] een STRING gegeven met daarin een 1. Dus geen integer.
dus quotes om die 1 horen dus eigenlijk wel.
Test zelf maar:
test.php
test.php?page=1 's output:
Hier is te zien dat ["page"] toegewezen is aan een tekenreeks ("string") met 1 teken, namelijk: "1".
Echt verschrikkelijk hoe men tegenwoordig allemaal loopt te zeuren. Ik vind dit systeem zo slecht nog niet.
Zoals altijd wil iedereen gewoon wat te zeuren hebben.
Dit systeem vind ik zelf helemaaaal niet fijn.
Ik gebruik zelf altijd 2 bestanden voor de layout: htmltop en htmlbottom
Daar tussenin zit dus de variabele content. SEO ook vriendelijker (ook al is dat op te lossen met ModRewrite etc)..
Op deze manier is het ook lastiger om formulieren te versturen vind ik. En waar wil je alle verwerking van php neerzetten? Alle verwerking van ALLE pagina's op 1 index.php pagina? Haalt de snelheid ook nog eens omlaag.
Ik zal het dus niet doen op deze manier. Voor elke pagina een apart php bestand maken is net zo makkelijk en veel sneller, handiger, overzichtelijker etc
Ik gebruik zelf altijd 2 bestanden voor de layout: htmltop en htmlbottom
Daar tussenin zit dus de variabele content. SEO ook vriendelijker (ook al is dat op te lossen met ModRewrite etc)..
Op deze manier is het ook lastiger om formulieren te versturen vind ik. En waar wil je alle verwerking van php neerzetten? Alle verwerking van ALLE pagina's op 1 index.php pagina? Haalt de snelheid ook nog eens omlaag.
Ik zal het dus niet doen op deze manier. Voor elke pagina een apart php bestand maken is net zo makkelijk en veel sneller, handiger, overzichtelijker etc
Quote:
Tja, tot je echt een dynamische website bouwt en je bijvoorbeeld pagina's laat genereren aan de hand van content uit je database. Dan gaat jouw strategie al niet meer op...Ik zal het dus niet doen op deze manier. Voor elke pagina een apart php bestand maken is net zo makkelijk en veel sneller, handiger, overzichtelijker etc
Wat betreft deze tutorial: het biedt een basis opzet, maar ook niet veel meer dan dat. Als je gebruik maakt van de informatie, vergeet dan niet veel meer aandacht te besteden aan beveiliging, SEO, gebruiksvriendelijkheid, etc.
Eum beetje belachelijke code, niet?
gewoon:
content.php:
$p = $_GET['p'];
if ($p == "linknaam"){
include ("paginanaam.html");
}
en op je index.php zet je daar waar je de inhoud van de pagina wilt
als je een link wilt maken die in de 'content' moet komen <a href="?p=linknaam">Link1</a>
gewoon:
content.php:
$p = $_GET['p'];
if ($p == "linknaam"){
include ("paginanaam.html");
}
en op je index.php zet je daar waar je de inhoud van de pagina wilt
als je een link wilt maken die in de 'content' moet komen <a href="?p=linknaam">Link1</a>
@Dennis: include is ook een functie?: http://www.phphulp.nl/php/tutorials/4/286/
Persoonlijk doe ik het:
Hierbij moet je wanneer je een nieuwe pagina aanmaakt, het wel even aanpassen, maar je kunt hier ook pagina's die je niet toegankelijk wilt maken excluden, dat is dan weer wel handig.
Mocht je dat niet hoeven, kun je ook dit gebruiken:
Hierbij kijk je gewoon of het bestand bestaat. Dit is dus wel gevaarlijker aangezien de user elk bestand kan laten includen.
Verder zou je de link met javascript aankunnen passen. Dit zou je met DocumentGetElementById kunnen doen. Omdat dit misschien te ingewikkeld voor je is, kun je ook het volgende proberen:
Je zorgt dat het menu in elk php bestand zit verwerkt. En dan bij elk bestand de bijhorende link een andere kleur heeft, iets meer werk maar wel simpeler.
Opzich een handig scriptje, maar probeer nog eens wat rond te kijken aangezien je dit heel erg kunt uitbreiden.
Persoonlijk doe ik het:
Code (php)
Hierbij moet je wanneer je een nieuwe pagina aanmaakt, het wel even aanpassen, maar je kunt hier ook pagina's die je niet toegankelijk wilt maken excluden, dat is dan weer wel handig.
Mocht je dat niet hoeven, kun je ook dit gebruiken:
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
<?php
if (file_exists($_GET['page'].".php")) {
include($_GET['page'].".php");
}
else {
include("404.php");
}
?>
if (file_exists($_GET['page'].".php")) {
include($_GET['page'].".php");
}
else {
include("404.php");
}
?>
Hierbij kijk je gewoon of het bestand bestaat. Dit is dus wel gevaarlijker aangezien de user elk bestand kan laten includen.
Verder zou je de link met javascript aankunnen passen. Dit zou je met DocumentGetElementById kunnen doen. Omdat dit misschien te ingewikkeld voor je is, kun je ook het volgende proberen:
Je zorgt dat het menu in elk php bestand zit verwerkt. En dan bij elk bestand de bijhorende link een andere kleur heeft, iets meer werk maar wel simpeler.
Opzich een handig scriptje, maar probeer nog eens wat rond te kijken aangezien je dit heel erg kunt uitbreiden.
Om te reageren heb je een account nodig en je moet ingelogd zijn.
- Details
Door:
Danny@dw-designs.n- 3 jaar geleden
- 1.195 x bekeken
- Labels
- Geen tags toegevoegd.
- PHP tutorials opties
- Overig
- Nieuwste PHP tutorials
- PHP tutorial toevoegen

PHP hulp
0 seconden vanaf nu