Avatar billede rasmus_a Nybegynder
28. februar 2004 - 12:25 Der er 7 kommentarer og
1 løsning

fejl i include

<?php
  if(!isset($dir)) $dir = 'dir/front.php';
?>

...


<?php
include($_GET['$dir']);
?>

=

Warning: main(): Failed opening '' for inclusion (include_path='.:/php/includes:/usr/share/php') in /var/www/html/fil.php on line 31

(linie 31 er include linien)

Hvad er der galt?
Avatar billede jakoba Nybegynder
28. februar 2004 - 12:32 #1
lav en debug linie for at hitte ud af præcis hvad der står i $dir:

<?php
  echo "\$dir er '" .$dir ."' ";    // debug linie (fjernes igen sidenhen)
include($_GET['$dir']);
?>
Avatar billede jakoba Nybegynder
28. februar 2004 - 12:35 #2
Kunne det være at din if sætning foroven står indeni en anden if sætning så den måske aldrig bliver udført?  Også det kan man få svar på med en debug linie:

<?php
    echo "nu udføres !isset på \$dir\n";        // debug linie
  if(!isset($dir)) $dir = 'dir/front.php';
?>
Avatar billede jakoba Nybegynder
28. februar 2004 - 12:35 #3
Jeg elsker debuglinier :-))
Avatar billede wampiro-uha Nybegynder
28. februar 2004 - 12:42 #4
Skal include($_GET['$dir']); ikke være include($dir); eller har jeg tabt?
Avatar billede Slettet bruger
28. februar 2004 - 12:44 #5
Et tip til at bruge debug-linier (Ja, de er seje.):

I starten af din fil (eller i en config-fil, du inkluderer) kan du sætte en variabel:

$DEBUG=true;

Når du så vil lave en debuglinie skriver du bare:

if($DEBUG){echo "noget";print_r($variabel);}
Avatar billede Slettet bruger
28. februar 2004 - 12:47 #6
Jo, der skal i hvertfald ikke stå $_GET['$dir']

Enten indeholder $dir navnet på et element fra $_GET, og så skal der ikke '' om eller også forsøger du at bruge en værdi, der hedder $dir, og $ er ikke gyldigt i navne på array-elementer.
Avatar billede rasmus_a Nybegynder
28. februar 2004 - 13:22 #7
begge "scripts" står helt alene ligesom anført..
Avatar billede rasmus_a Nybegynder
29. februar 2004 - 19:15 #8
jo,. det skulle åbenbart bare være $dir - det troede jeg ikke nyere PHP ville godkende men det gjorde den :) tak til alle.
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