Een vraag over inloggen.

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Pagina: « vorige 1 2 3

- Ariën  -
Beheerder

- Ariën -

23/02/2018 13:37:43
Quote Anchor link
Staat die wel in dezelfde map vanwaar je probeert te includeren?
Bouw anders eens een file_exists() controle in bij je include, dan kan je meteen opvangen of een bestand bestaat. Het zou nog mooier zijn om de beschikbare pagina's in een array te definiëren.
 
PHP hulp

PHP hulp

02/05/2024 15:30:25
 
Jasper Schellekens

Jasper Schellekens

23/02/2018 13:45:49
Quote Anchor link
Hoe kan ik beschikbare pagina's in een array definieren? hoe bedoel je dat?

Ik heb er dit van gemaakt:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
if($page == "viewreport"){
if(file_exists(viewreport.php)){
include"viewreport.php";
} else{
 echo"Could not find page.";
}  
}


En hij zegt inderdaad Could not find page.

Dit is zo vreemd want paginas zoals index.php?p=account werkt prima.

zelfs index.php?p=viewreport zegt wrong page.

terwijl viewreport.php het gewoon doet en ze echt in de zelfde map staan.
Gewijzigd op 23/02/2018 13:47:17 door Jasper Schellekens
 
- Ariën  -
Beheerder

- Ariën -

23/02/2018 14:07:16
Quote Anchor link
Zet de bestandsnaam in je file_exists eens in een string. ;-)

Je hebt nu een procedure geschreven voor een enkele pagina. Ga je dit stukje code steeds herhalen voor een nieuwe pagina? Denk aan DRY oftewel Don't Repeat Yourself.

Maak dan een array aan waarin je alle bestanden plaatst die geincludeerd mogen worden. Vervolgens kijk je met in_array of een bestand voorkomt, en als dat zo controleer je of deze daadwerkelijk bestaat. En als deze bestaat, dan includeer je hem.

Dan krijg je dus zoiets:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?php
$allowed_pages
= array('viewreport','editreport','deletereport');
if(isset($_GET['p']))
    if(in_array($_GET['p']', $allowed_pages)) {
        if(file_exists($_GET['
p']".php")){
            include $_GET['
p']."php";
        }
else {
            echo "Could not find page.";
        }  
    }
else {
        echo "This page is not allowed.";
    }
}
else {
    echo "Er is geen keuze gemaakt in de URL.";
}

?>
 
Jasper Schellekens

Jasper Schellekens

23/02/2018 14:24:48
Quote Anchor link
Dit heeft inderdaad gewerkt. Bedankt.
 

Pagina: « vorige 1 2 3



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.