Meerdere pagina's in 1 content

Door Danny@dw-designs.n , 13 jaar geleden, 6.476x bekeken

Hoe voeg ik meerdere pagina's toe in een content!

Gesponsorde koppelingen

Inhoudsopgave

  1. Inleiding
  2. De content
  3. De uitleg
  4. Slot
  5. 1 pagina te veel, sorry:(!

 

Er zijn 21 reacties op 'Meerdere paginas in 1 content'

PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Jeroen
Jeroen
13 jaar geleden
 
0 +1 -0 -1
In je code bij de uitleg is het een beetje overbodig om de $_GET om te zetten naar $url, tevens wordt er ook niet gecontroleerd op numerieke waarden.
Danny@dw-designs.n
danny@dw-designs.n
13 jaar geleden
 
0 +1 -0 -1
Nee, het is ook niet zeer een numerieke waarde.
achter ?page=
Kan het ook een text waarde zijn.
- -
- -
13 jaar geleden
 
0 +1 -0 -1
Klopt niets van je uitleg! Lees de php beginnershandleiding door, daar staat het juist en correct in! Voor zowel jij als degene die hopelijk de reacties doorkijken ;-)
Rutje1
rutje1
13 jaar geleden
 
0 +1 -0 -1
ik zoek ook een manier om dit voor elkaar te krijgen! Hoopte dat dit zou lukken maar na de reacties lezen is mn hoop weg. Dan toch maar (verder) gaan zoeken naar een oplossing :(
Hipska BE
Hipska BE
13 jaar geleden
 
0 +1 -0 -1
Maak van je php stukje even dit, dan zal het al wat beter en veiliger zijn.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
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';
?>
Dennis Mertens
Dennis Mertens
13 jaar geleden
 
0 +1 -0 -1
Leuke tut, maar ik zie wel een aantal dingen die niet geheel juist zijn.

Bij een case, indien het een integer is, geen quotes.

Bij een include geen haakjes, dat wekt de indruk dat het een function is.
Pieter van Linschoten
Pieter van Linschoten
13 jaar geleden
 
0 +1 -0 -1
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)
Toby hinloopen
toby hinloopen
13 jaar geleden
 
0 +1 -0 -1
@ 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
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<pre><?php var_dump($_GET);?></pre>


test.php?page=1 's output:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
array(1) {
  ["page"]=>
  string(1) "1"
}

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.
Danny@dw-designs.n
danny@dw-designs.n
13 jaar geleden
 
0 +1 -0 -1
Well.. Dank jullie!
Ik zelf werk er ook mee, werkt echt prim
Roland F
Roland F
13 jaar geleden
 
0 +1 -0 -1
Bij het lezen van de titel dacht ik aan een mooie tut over het opsplitsen van bv een artikel in meerdere pagina's middels [break] tag oid...

Helaas... slechts een 13 in dozijn stukje tekst.
Toby hinloopen
toby hinloopen
13 jaar geleden
 
0 +1 -0 -1
@ roland:
wat bedoel jij?
Robin de Vries
Robin de Vries
13 jaar geleden
 
0 +1 -0 -1
(dozijn = 12)
Kay Kay
Kay Kay
13 jaar geleden
 
0 +1 -0 -1
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
Danny@dw-designs.n
danny@dw-designs.n
13 jaar geleden
 
0 +1 -0 -1
HaTe,
Bij dit systeem gebruik je ook voor elke pagina een apart .PHP bestand.
Je include het bestand, en die word geplaats op de plaats van $content (of hoe je het ook noemt).

Maar formulieren versturen werkt hier prima mee!
Ik zou niet weten waarom formulieren hierdoor belemmert moet worden?
Joren de Wit
Joren de Wit
13 jaar geleden
 
0 +1 -0 -1
Quote:
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
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...

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.
Sam Smekens
Sam Smekens
13 jaar geleden
 
0 +1 -0 -1
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
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php include (content.php); ?>


als je een link wilt maken die in de 'content' moet komen <a href="?p=linknaam">Link1</a>
Dennis Mertens
Dennis Mertens
13 jaar geleden
 
0 +1 -0 -1
Dat van jou is ook belachelijk Sam :s
Crude Oil
Crude Oil
13 jaar geleden
 
0 +1 -0 -1
mooie tut
Patrick van Kampen
Patrick van Kampen
13 jaar geleden
 
0 +1 -0 -1
Is het nou ook mogelijk met zo een een content script dat je de actieve pagina/link bijvoorbeeld page2.php dus Link 2 een andere kleur geeft?

Dus eigenlijk dat je actieve link in de navigatie balk afwijkt van de andere links?
Danny@dw-designs.n
danny@dw-designs.n
13 jaar geleden
 
0 +1 -0 -1
Patrick,

Ik heb werkelijk geen idee.
Het zou kunnen dat je op elke pagina een variable maakt met bv;

$variable = 'pagina 1';

en dat je op index.php neer zet
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
if($variable == 'pagina 1') {
  echo 'LINK BLAUW';
}
elseif($variable != 'pagina 1') {
 echo 'ANDERE KLEUR!';
}

?>
PHP hulp
PHP hulp
0 seconden vanaf nu
 

Gesponsorde koppelingen
Steven Hack
Steven Hack
13 jaar geleden
 
0 +1 -0 -1
@Dennis: include is ook een functie?: http://www.phphulp.nl/php/tutorials/4/286/

Persoonlijk doe ik het:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?php
    switch (strtolower($_GET['page'])) {
        case
"":
        case
"home":
            include("home.php");
        break;
        default:

            include("404.php");
        break;
    }

?>

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)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?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.

Inhoudsopgave

  1. Inleiding
  2. De content
  3. De uitleg
  4. Slot
  5. 1 pagina te veel, sorry:(!

Labels

  • Geen tags toegevoegd.

PHP tutorial opties

 
 

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.