Avatar billede TheYaXxE Juniormester
24. januar 2013 - 13:35 Der er 2 kommentarer og
1 løsning

Forhindre bruger i at gå ind på ikke eksisterende side

Hej alle :D

Har et lille problem jeg vil høre om I kan hjælpe mig med.

På min hjemmeside har jeg en side, hvor indholdet automatisk bliver genereret via:

side.php?step=1

Jeg har sider op til ?step=4


Mit problem er så at skriver man ?step=6 kommer man ind på en helt blank side
Har vef hjælp af:

if(!isset($_GET['step'])) {
    header('Location: side.php?step=1');
}

gjort at man ikke kan gå ind på andre sider en side.php?step, men kan ikke forhindre brugeren i at gå ind på andre ikke-eksisterende sider, såsom:

side.php?step=10 eller side.php?step=hahaha

Er der en måde som man kan forhindre brugeren i dette?
Takker :D

- YaXxE
Avatar billede scootergrisen Nybegynder
24. januar 2013 - 14:06 #1
Du kan skrive de gyldige værdier i et array også kun viderestille hvis det der står i queryen findes i arrayet.

$a = array('1', '2', '3');

if (in_array($_GET['step'], $a, true)) {
    header(...);
}else{
  // findes ikke
}

Noget i den stil. ikke testet.
Avatar billede hypofysen Nybegynder
24. januar 2013 - 19:09 #2
$page = $_GET['step'];
switch ($page){
    case "1":
        print "side 1";
        break;
    case "2":
        print "side 2";
        break;   
    case "3":
        print "side 3";
        break;

    default:
        print "siden findes ikke";
        break;
Avatar billede TheYaXxE Juniormester
16. februar 2013 - 16:11 #3
Brugte denne kode:

if(($_GET['step'] < "1") && ($_GET['step'] > "4")) {
header("Location: install?step=1");
}
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester