Avatar billede radion Nybegynder
14. marts 2004 - 08:49 Der er 6 kommentarer og
1 løsning

hvordan fanger man fejl?

Hej Eksperter

Jeg har en side hvor jeg bruger en include $_GET['indhold'] . ".php" i midten af siden.

hvis nu $_GET['indhold'] indeholder en side der ikke findes vil jeg gerne have den til at springe til forsiden igen... hvordan får jeg fat i om der kommer en fejl i include()?
Avatar billede wickedd Juniormester
14. marts 2004 - 09:04 #1
Avatar billede taskmgr Nybegynder
14. marts 2004 - 09:05 #2
Brug file_exists()

if(file_exists($din_include) {
  include($din_include);
}else{
  include("forside.php");
}
Avatar billede taskmgr Nybegynder
14. marts 2004 - 09:06 #3
if(file_exists($din_include)) {
Avatar billede radion Nybegynder
14. marts 2004 - 09:12 #4
jeg takker :)
Avatar billede taskmgr Nybegynder
14. marts 2004 - 09:14 #5
og jeg takker for point :)
Avatar billede erikjacobsen Ekspert
14. marts 2004 - 09:16 #6
include($_GET['indhold'])

udgør en sikkerhedsrisiko, da en bruger kan skrive navnet på en vilkårlig fil
i URL-en, også dem du gerne vil holde hemmelige. En bedre metode er

  $a=array('sjov.html','ballade.html','smut.php');  // kun de lovlige sider
  $n=$_GET['indhold'];
  if (in_array($n,$a)) {
    include($n);
  } else {
    include('fejl.html');
  }
Avatar billede radion Nybegynder
14. marts 2004 - 09:25 #7
erikjacobsen:
ja, det har du ret i, men jeg har ikke så meget at gemme, og include($_get['indhold'] . '.php'); er den løsning jeg bedst kan lide.

tak for hjælpen  :)
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