switch ($_GET)
Goedenavond,
Ik ben bezig met een website waarbij alles uit de database komt, en een simpel cms. Nu haal ik alles uit de database met if(isset($_GET['pagina'])). Wat ik graag wil is een switch met daarin de mogelijkheden van $_GET.
ik weet wel dat je een switch kan maken met $p = $_GET['pagina'], maar ik wil dus een switch waar pagina een case is.
Ik het voorbeeld wordt bij 'pagina' de normale pagina's gemaakt. Nieuws is in dit geval een speciale pagina, hiervoor heb ik ook een aparte beheer pagina.
Dus als voorbeeld:
Case 'pagina':
.....
break;
Case 'nieuws':
....
break;
Weet iemand of dit mogelijk is??
Ik ben bezig met een website waarbij alles uit de database komt, en een simpel cms. Nu haal ik alles uit de database met if(isset($_GET['pagina'])). Wat ik graag wil is een switch met daarin de mogelijkheden van $_GET.
ik weet wel dat je een switch kan maken met $p = $_GET['pagina'], maar ik wil dus een switch waar pagina een case is.
Ik het voorbeeld wordt bij 'pagina' de normale pagina's gemaakt. Nieuws is in dit geval een speciale pagina, hiervoor heb ik ook een aparte beheer pagina.
Dus als voorbeeld:
Case 'pagina':
.....
break;
Case 'nieuws':
....
break;
Weet iemand of dit mogelijk is??
Code (php)
Wat is het probleem?
Ja hier had ik ook al aan zitten denken, maar ik vroeg me af of het mogelijk was om dit te doen:
enig idee of dit kan en zo ja hoe?
enig idee of dit kan en zo ja hoe?
Als je een kant en klare oplossing wilt: plaats een vacature.
Als je wat wilt leren: Wat houdt je tegen om het te proberen? Voorbeeld van Frank lijkt me duidelijk genoeg. Anders is met Google ook nog het nodige te vinden over dit onderwerp.
Als je wat wilt leren: Wat houdt je tegen om het te proberen? Voorbeeld van Frank lijkt me duidelijk genoeg. Anders is met Google ook nog het nodige te vinden over dit onderwerp.
So'n grote vraag is dit nou ook niet, om voor zo iets een vacature te plaatsen vindt ik een beetje overdreven.
Ik vraag me gewoon af of dit kan, het lijkt me geen code van 20 regels. Maar ($_GET) werkt niet, misschien is de oplossing simpel en dan hoor ik dat graag!
Ik vraag me gewoon af of dit kan, het lijkt me geen code van 20 regels. Maar ($_GET) werkt niet, misschien is de oplossing simpel en dan hoor ik dat graag!
Nee, kijk maar eens wat er in $_GET zit...
@wouter
Ik weet dat je normaal alleen de waarde uit de url haalt zoals een id nummer of pagina, als ik er zo over nadenk dan lijkt het mij dat $_GET alleen de waardes uit de url haalt.
Is het mogelijk of niet? Als het niet mogelijk is dan doe ik het op frank zijn manier.
Alvast bedankt!
Ik weet dat je normaal alleen de waarde uit de url haalt zoals een id nummer of pagina, als ik er zo over nadenk dan lijkt het mij dat $_GET alleen de waardes uit de url haalt.
Is het mogelijk of niet? Als het niet mogelijk is dan doe ik het op frank zijn manier.
Alvast bedankt!
inderdaad.
Maar waarom een switch?
Zeker als je alleen maar bestanden gaat includen: gewoon één (of twee) array('s) en dan in_array().
Tim $_GET is een array. Een array is een verzameling variabelen.
Ga hier eens mee aan de gang:
Ga hier eens mee aan de gang:
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
33
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
33
<?php
// ---------------------------------------------------------------------------
// Associatieve array (dus een array met waarden die je ergens mee associeert
// ---------------------------------------------------------------------------
// declaratie van associatieve een array:
$arr = array('id' => 1, 'name' => 'Tim');
// verander items in een array. Indien het item age nog niet bestaat wordt ie aangemaakt
$arr['age'] = 26;
// idem voor birthday
$arr['birthday'] = '01-01-1985';
// lus om door alle items heen te lopen:
foreach($arr as $key => $value)
echo $key.': '.$value.'<br/>';
// --------------------------
// normale (numerieke) array
// --------------------------
// declaratie van een array met 4 items
// een lege array declareren kan ook: $arr = array();
$arr2 = array(10, 15, 20, 25);
echo $arr2; // levert Array() (dit is dus fout)
echo $arr2[0]; //levert 10
// loop
foreach($arr2 as $key => $value)
echo $key.': '.$value.'<br/>';
?>
// ---------------------------------------------------------------------------
// Associatieve array (dus een array met waarden die je ergens mee associeert
// ---------------------------------------------------------------------------
// declaratie van associatieve een array:
$arr = array('id' => 1, 'name' => 'Tim');
// verander items in een array. Indien het item age nog niet bestaat wordt ie aangemaakt
$arr['age'] = 26;
// idem voor birthday
$arr['birthday'] = '01-01-1985';
// lus om door alle items heen te lopen:
foreach($arr as $key => $value)
echo $key.': '.$value.'<br/>';
// --------------------------
// normale (numerieke) array
// --------------------------
// declaratie van een array met 4 items
// een lege array declareren kan ook: $arr = array();
$arr2 = array(10, 15, 20, 25);
echo $arr2; // levert Array() (dit is dus fout)
echo $arr2[0]; //levert 10
// loop
foreach($arr2 as $key => $value)
echo $key.': '.$value.'<br/>';
?>
Gewijzigd op 04/11/2012 21:00:43 door Frank Nietbelangrijk
Ik kijk nu alleen of er een pagina is en zo ja dan wordt de bijbehorende content uit de database gehaald en in een template geplaatst.
Dus bijv:
het idee was om dit in een switch te zetten.
Het kan ook op de oude manier, maar ik ga wel even kijken naar de array's. Ik denk dat dit later ook nog wel van pas kan komen.
Bedankt voor de reacties!
Dus bijv:
het idee was om dit in een switch te zetten.
Code (php)
1
2
3
4
5
6
7
8
2
3
4
5
6
7
8
switch (..)
case 'pagina':
$paginaid = $_GET['pagina'];
break;
case 'nieuws':
..dan hier de bijbehoorende code
case 'pagina':
$paginaid = $_GET['pagina'];
break;
case 'nieuws':
..dan hier de bijbehoorende code
Het kan ook op de oude manier, maar ik ga wel even kijken naar de array's. Ik denk dat dit later ook nog wel van pas kan komen.
Bedankt voor de reacties!




