Gå til innhold

PHP include, hjelp


Anbefalte innlegg

Videoannonse
Annonse

ta og vis oss linje 77 så kan vi fikse den ^^

 

Includescript som funker og er sikkert ;)

<?php
$start = "start";
$dir = "inc";
$filnavn = "php";
$page = $_GET['p'];
if (preg_match('(/http:\/\/|^\/|\.+?\/)/', $page))
echo "Dont try that again please!";
elseif (!empty($page))
{
if (file_exists("$dir/$page.$filnavn))
include("$dir/$page.$filnavn");
else
echo "<p>Noe gikk feil, prøv på nytt.</p>\n";
}
else
include("$dir/$start.$filnavn");
?>

bare legg alle filer som skal includeres i inc og hent dem med ?p=ettelleranna

 

så skulle alt funke ;)

Lenke til kommentar

stianiquniez:

det er ikke et så verst script, men i preg_match'en din så holder det lenge med å kun passe på at filnavnet inneholder / eller .

På den måten passer du på at det ikke er tastet inn et domene, ip eller at den forsøker å bevege seg ut av mappen.

 

Videre så er det lurt å ikke oppfordre til hacking ved å vise en sånn tekst, mye bedre å vise en 404 error side. Glem ikke at .php er en file extention eller en filendelse/type, og ikke filnavn - bedre variabel navn er $file_ext eller noe.

 

Det siste der var kun tips til forbedringer, ideen din er meget god!

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...