2min Devops

How to: Multiviews gebruiken in php

Multiviews gebruiken in php

Nu de multiviews aan staan op de server kunnen we eindelijk aan de gang met het combineren van multiviews met php. Hiervoor nemen we het voorbeeld van het forum van tweakzone, we hebben bijvoorbeeld deze url: http://forum.techzine.nl/topic/10. Nu willen we graag in een variabele ($var[]) weten in welk topic we momenteel zitten, zodat je later alle results van dit topic doormiddel van een query uit de database kunt halen. Laten we er eens een stukje code er tegenaan gooien:

PHP Code

1
2
3
4
5
6
7
8
9
10
 
// serveradres opvragen
$adres = $_SERVER['REQUEST_URI'];
 
// uitsplitsen van gegevens
$var = explode('/' , $adres);
 
// kan ook versneld namelijk:
$var = explode('/' , $_SERVER['REQUEST_URI']);
 

Laten we dit eerst eens even uitleggen.
De eerste regel $adres = $_SERVER[‘REQUEST_URI’]; haalt het complete adres op waar je op dat moment bent. Dus in dit geval krijgt de variabele $adres de waarde http://forum.techzine.nl/topic/10. Vervolgens explode hij de link op elke plek waar hij een “/” tegenkomt en maakt hier een array van.

Nu heb je van $var een geïndexeerde array gemaakt waarmee je de waardes kunt opvragen. In het volgende voorbeeld laat ik zien hoe je bijvoorbeeld topic 10 uit de database kunt halen doormiddel van een query.

PHP Code

1
2
3
4
5
6
7
 
// Url opvragen en exploden
$var = explode('/' , $_SERVER['REQUEST_URI']);
 
// De query om de topicreplies uit de database te halen
$query = "SELECT * FROM topics WHERE topic_id  = '".$var['2']."'";
 

Dit is dus een vergelijkbare manier aan $_GET, ik hoop dat jullie er wat van opgestoken hebben. Mocht iets onduidelijk zijn dat hoor ik het wel.