Mijn Dynamic Web Page werkt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gijs konings

gijs konings

29/05/2010 18:36:36
Quote Anchor link
Dag leden,

Ik getipt door een klasgenoot naar deze website. Ik zit op een ICT opleiding (2e leerjaar) en heb ook les in PHP (En ik ben echt nog een beginner, ik zit zelf af en toe nog te rommelen met de if-else statement). Ik heb een eindopdracht gekregen en ik probeer de website goed netjes te maken.

Ik heb een tutorial gevolgd op Youtube voor een Dynamic Webpage (http://www.youtube.com/watch?v=62h6Wr7heXk) maar degene die de tutorial uitlegde kreeg het voor elkaar en ik niet. Ik heb uren naar de code zitten staren van hem om te zoeken naar fouten. Het enige verschil is dat mijn index.php in een css geschreven is, maar dit zou volgens mij geen probleem moeten veroorzaken.

Dit is de code van de index.php (alleen de belangrijke delen):

<li><a href="index.php">Home</a></li>
<li><a href="index.php?page=cp">Contact pagina</a></li>

Later op de pagina:

$page = $_GET['page'];
if ($page)
{
include("inc/".$page.".php");
}
else
{
include('inc/hm.php');
}

Dit staat op de 'cp' pagina (Contact Pagina) en dit is tevens een PHP bestand:

Hypotheek Expert<br>
Geldlaan 43<br>
3344 CC Wageningen<br>
Nederland<br>
Tel. 0317 400078<br>
Fax. 0317 400079<br>

Weten jullie wat ik fout heb gedaan, en als jullie het complete bestand willen kunnen jullie het vragen hoor. Alvast bedankt!

Gijs.
Gewijzigd op 29/05/2010 18:42:13 door Gijs konings
 
PHP hulp

PHP hulp

25/04/2024 00:14:59
 
Joren de Wit

Joren de Wit

29/05/2010 18:48:11
Quote Anchor link
Ik kan uit je post niet opmaken wat nu eigenlijk je probleem is? Wat gaat er fout?
 
Niels K

Niels K

29/05/2010 19:01:07
Quote Anchor link
Blance wat ik denk dat hij aan de hand van de $_GET variable wat wil includen..

Zoja dan klopt dit niet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php

$page
= $_GET['page'];
if ($page)
{

include("inc/".$page.".php");
}

else
{
include('inc/hm.php');
}


?>


Zoals ik het opvat moet het zo worden

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
<?php

$page
= htmlspecialchars($_GET['page']);
if(!empty($page))
{

include("inc/".$page.".php");
}

else
{
include('inc/hm.php');
}


?>
 
Martijn B

Martijn B

29/05/2010 19:03:29
Quote Anchor link
Je gebruikt dus wel PHP blokken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo 'Dit is PHP code en wordt uitgevoerd door de webserver...';
?>


Maar wat zie je en wat verwacht je te zien?
 
Pim -

Pim -

29/05/2010 19:48:49
Quote Anchor link
@Niels
Nee hoor, zijn code werkt ook. Het zal hoogstens een notice afgeven als de variabele niet bestaat en verder levensgevaarlijk zijn voor code injectie, maar het werkt ;)
 
Joren de Wit

Joren de Wit

29/05/2010 23:04:10
Quote Anchor link
Verder zou ik in dit verband ook geen htmlspecialchars() gebruiken. Je gaat immers nergens HTML outputten naar een browser, dus die functie is overbodig. Wel zou je $_GET['page'] kunnen controleren op ongeldige tekens, denk aan ../ of http://. Of controleer of de waarde van $_GET['page'] in een vooraf gedefinieerde array met te includen paginas voorkomt...

ps. Mijn eerdere vraag staat uiteraard nog steeds: wat gaat er fout?
Gewijzigd op 29/05/2010 23:16:00 door Joren de Wit
 
Gijs konings

gijs konings

31/05/2010 19:30:06
Quote Anchor link
Het werkt nog steeds niet, het enige wat ik dus krijg is een lege pagina. Maar als je bovenin de browser naar de hyperlink kijkt zie je dat hij de varibelen heeft megenomen. Hier is een kopie van de link die ik krijg:

file:///K:/Eindopdracht%20PHP/De%20Hypotheekshop/index.php?page=cp
 
Gijs konings

gijs konings

31/05/2010 19:32:21
Quote Anchor link
Blanche PHP op 29/05/2010 23:04:10:
Verder zou ik in dit verband ook geen htmlspecialchars() gebruiken. Je gaat immers nergens HTML outputten naar een browser, dus die functie is overbodig. Wel zou je $_GET['page'] kunnen controleren op ongeldige tekens, denk aan ../ of http://. Of controleer of de waarde van $_GET['page'] in een vooraf gedefinieerde array met te includen paginas voorkomt...

ps. Mijn eerdere vraag staat uiteraard nog steeds: wat gaat er fout?


Ik heb de $_GET['page'] gecontroleerd er ook hier zitten geen fouten in, boven deze reactie staat mijn antwoord op jouw dringende vraag.. ;) :P
 
Martijn B

Martijn B

31/05/2010 19:34:06
Quote Anchor link
Zie je dat in je browser???? Dat gaat zeker weten niet werken.

Meestal als je op je PC bezig bent ga je naar je localhost.

Een adres ziet er dan zo uit:
http://localhost/mijnscript.php

localhost is jou pc, je kunt dit ook vervangen door jou IP adres.

Heb je wel Apache en PHP geinstallerd op je PC?
Installeer anders WAMP weet je zeker dat je aan de slag kunt met PHP.
Gewijzigd op 31/05/2010 19:35:52 door Martijn B
 



Overzicht Reageren

 
 

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.