Avatar billede gulvflaesk Nybegynder
03. november 2012 - 09:58 Der er 4 kommentarer og
1 løsning

Afvise brugere som har manipuleret med query strengen?

Hej Eksperter

Jeg har en lille udregner hvor man skal bruge start ugedag. Ugedagen bliver hentet direkte med $_GET[ugedag] og man kan derfor selv skrive noget i adresselinien for at få det vist på siden, hvilket ikke er meningen.

Derfor vil jeg gerne afvise brugere som har manipuleret med query strengen. Query strengen må være tom samt indeholde hver enkelt ugedag.

Jeg har selv prøvet:

<?php

if($_GET["ugedag"] != ""||"mandag"||"tirsdag"||"onsdag"||"torsdag"||"fredag"||"lørdag"||"søndag") {
       
    echo "<h1>Du har ikke adgang!</h1>";
       
} ?>

Hvad er der galt her? Den viser 'Du har ikke adgang' hele tiden...

Håber i kan hjælpe.

På Forhånd tak.

De bedste hilsner,
Martin
Avatar billede The_Buzz Novice
03. november 2012 - 10:36 #1
Tilladt request: http://test.modified.dk/2012-03-11.php?ugedag=onsdag
http://test.modified.dk/2012-03-11.php?ugedag=
http://test.modified.dk/2012-03-11.php?ugedag=tirsdag

Ikke tilladt: http://test.modified.dk/2012-03-11.php?ugedag=onstorsdag

<?php

if (isset($_GET["ugedag"]) and ($_GET["ugedag"] != ""  and  $_GET["ugedag"] != "mandag" and  $_GET["ugedag"] != "tirsdag" and  $_GET["ugedag"] != "onsdag" and  $_GET["ugedag"] != "torsdag" and  $_GET["ugedag"] != "fredag" and  $_GET["ugedag"] != "lørdag" and  $_GET["ugedag"] != "søndag")) {
       
    echo "<h1>Du har ikke adgang!</h1>";
    die;   
} else {
    echo 'Du har adgang og her skal alt tilladt ske.';
}
?>
Avatar billede gulvflaesk Nybegynder
03. november 2012 - 10:54 #2
Du har reddet min lørdag! Tusinde tak for hjælpen, virkelig.

Hvis du smider et svar, så får du kærlighed i form af point herfra ;)

Tak, tak, tak for din hjælp!
Avatar billede The_Buzz Novice
03. november 2012 - 11:14 #3
Svar
Avatar billede olebole Juniormester
03. november 2012 - 16:56 #4
<ole>

Du kan også skrive:

<?php
$arrCheck = array('mandag'=>1,'tirsdag'=>1,'onsdag'=>1,
'torsdag'=>1,'fredag'=>1,'lørdag'=>1,'søndag'=>1);

$day = $_POST['ugedag'];
if (isset(day) && $arrCheck[$day]) {
  // Lovligt indhold
}
?>

/mvh
</bole>
Avatar billede olebole Juniormester
03. november 2012 - 16:58 #5
- og du skifter selvfølgelig bare $_POST ud med $_GET  =)
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



IT-JOB

Udviklings- og Forenklingsstyrelsen

Rådgivende it-arkitekter med stærke samarbejdsevner

Metroselskabet og Hovedstadens Letbane

Cyber Security Konsulent

ALD Automotive Danmark A/S

Senior Software Engineer