login  Naam:   Wachtwoord: 
Registreer je!
 Forum

http://mij-website.nl/?p=nieuws

Offline nicdew77 - 14/08/2008 20:18 (laatste wijziging 14/08/2008 20:18)
Avatar van nicdew77Nieuw lid Hoe zou je kunnen krijgen dat je bv:

http://mij-website.nl/?p=nieuws

Krijgt? ik heb al lopen zoeken maar nog niet echt iets gevonden. 

9 antwoorden

Gesponsorde links
Offline jc2 - 14/08/2008 20:25 (laatste wijziging 14/08/2008 20:30)
Avatar van jc2 PHP interesse Heel simpel:
  1. <?
  2. // dit zet je bovenaan je website
  3. if(is_string($_REQUEST['p']) AND !empty($_REQUEST['p'])){
  4. $pagina=$_REQUEST['p'];
  5. }
  6. else{
  7. $pagina="startpagina";
  8. }
  9. ?>


  1. <!-- in je menu zet je zoiets -->
  2. <ul>
  3. <li><a href="?p=startpagina">Startpagina</a></li>
  4. <li><a href="?p=nieuws">Nieuws</a></li>
  5. <!-- enz. -->
  6. </ul>


Dan kun je voor 2 dingen kiezen:
A. Het nieuws uit de database laden in de website
B. nieuws.php inladen in je index.php

Het nieuws uit de database laden gebeurt via SQL. (zie tutorials indien nodig)
Het tweede werkt d.m.v. de functie PHP.net: include.

Voorbeeldje van B:
  1. <?
  2. $paginalink="mapnaarjepagina/".$pagina.".php";
  3.  
  4. if(file_exists($paginalink)){
  5. include($paginalink);
  6. }
  7. else{
  8. include("startpagina.php"); // of error404, of iets anders ...
  9. }
  10. ?>


Het is een beetje kort door de bocht uitgelegd, maar kijk voor meer informatie maar eens hier
Offline nicdew77 - 14/08/2008 20:27 (laatste wijziging 14/08/2008 20:29)
Avatar van nicdew77 Nieuw lid kun je ff een voorbeeld code maken ik snap het niet helemaal je hebt drie codes??
want hoe weet hij nou dat nieuws
nieuws.php is?

ik ben nog niet zo goed in php
Offline Stijn - 14/08/2008 20:32
Avatar van Stijn PHP expert Die $_REQUEST is niet helemaal correct.

pagina.php?naam=stijn&leeftijd=19

Stel je hebt zo'n URL, wat gebeurt er dan precies? Eerst en vooral wordt pagina.php opgeroepen. Alles wat na .php staat is een querystring. Dit is een HTTP GET request. Je hebt ook een HTTP POST request, dit is bedoeld om grotere blokken data te versturen naar de server (denk maar aan formulieren). Nu wil je bijvoorbeeld de naam en de leeftijd uit die querystring halen. Dit doe je via de superglobal $_GET. $_GET is een array met keys en values die je als volgt kan gebruiken.

  1. <?php
  2. echo 'Naam: ' . $_GET['naam']; //output: Naam: stijn
  3. echo 'Leeftijd: ' . $_GET['leeftijd']; //output: Leeftijd: 19
  4. ?>
Offline nicdew77 - 14/08/2008 20:35
Avatar van nicdew77 Nieuw lid ik wil dat als je in het menu op nieuws klikt dat hij http://mijn-website.nl/?p=nieuws byvoorbeeld opent dus niet iets versturen
Offline jc2 - 14/08/2008 20:35 (laatste wijziging 14/08/2008 20:42)
Avatar van jc2 PHP interesse De eerste code controleert of er in je URL bij variabele 'p' letters en/of cijfers staan én of 'p' geen lege waarde heeft.
Als 'p' hieraan voldoet, krijgt variabele 'pagina' de waarde van 'p', anders 'startpagina'.

De tweede code is gewoon een menu met daarin de links naar de verschillende pagina's. Deze kun je natuurlijk uitbreiden. Dus forum wordt '?p=forum' etc.

Bij de derde code wordt eerst het absolute pad naar je pagina gegeven vanaf de _root. Bijv. de map 'php/'.
'file_exists' controleert of het bestand $pagina.php (dus: nieuws.php of forum.php) in de ingegeven map bestaat.
Zo ja, dan voegt hij dat bestand in je index-pagina in.
Zo nee, dan laadt hij startpagina.php.

@stijn1989: even offtopic; wat is het voor- of nadeel van het gebruik van $_REQUEST t.o.v. $_GET dan? Naar mijn mening hebben beide dezelfde functie. Ik gebruik altijd $_REQUEST.
  1. <?php
  2. echo 'Naam: ' . $_REQUEST['naam']; //output ook: Naam: stijn
  3. echo 'Leeftijd: ' . $_REQUEST['leeftijd']; //output ook: Leeftijd: 19
  4. ?>
Offline nicdew77 - 14/08/2008 20:47
Avatar van nicdew77 Nieuw lid jc2 jou code lukt bij mij niet..

ik heb alles goed ingevult maar hij lukt niet
Offline jc2 - 14/08/2008 20:58
Avatar van jc2 PHP interesse Wat voor foutmelding krijg je?
De pagina die je wilt laden moet natuurlijk wel bestaan.
Offline Stijn - 15/08/2008 21:38
Avatar van Stijn PHP expert @jc2: het verschil tussen $_REQUEST en $_GET is dat enkel de data van de querystring in de $_GET staat. In $_REQUEST staat alle requested data erin. Als je een formulier wilt verwerken met $_REQUEST kan ik ook je formulier laten verwerken met een HTTP GET request en daarin zit voor mij het grote verschil.
Offline Tuinstoel - 15/08/2008 22:23
Avatar van Tuinstoel PHP expert http://www.site...inasysteem

have phun
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.209s