Avatar billede oldschool Nybegynder
31. august 2006 - 09:59 Der er 18 kommentarer og
2 løsninger

Problemer med include

Hej

Jeg faldt over denne lille kodestump som passer ret perfekt til mit nuværende webprojekt...

(Fundet i dette spg http://www.eksperten.dk/spm/299658 )

<? if($page) { include("$page.php"); } else { include("main.php"); } ?>

Derefter linker jeg med <a href="?page=nysidesomskalhentes">link</a>

Umiddelbart fungerede det rigtig godt da jeg testede på en b-one server, men da jeg prøvede på den egentlige server som er hos web10 vil det simpelthen ikk fungere. Det er somom siden ikke "reloader". Nogen der kender til dette problem?

Oldschool
Avatar billede nielle Nybegynder
31. august 2006 - 10:04 #1
Prøv med dette:

<?
$page = $_GET["page"];
if($page) { include("$page.php"); } else { include("main.php"); }
?>
Avatar billede coderdk Praktikant
31. august 2006 - 10:05 #2
<? if(!empty($_GET['page']) { include($_GET['page'] . ".php"); } else { include("main.php"); } ?>
Avatar billede coderdk Praktikant
31. august 2006 - 10:10 #3
Gah! :)
Avatar billede oldschool Nybegynder
31. august 2006 - 10:10 #4
nielle: Fungerer perfekt:O) Svar tak...

coderdk: melder en fejl - unexpected '{' Er ikke så god til php (endnu) så kan ikke umiddelbart se hvor den er for meget
Avatar billede coderdk Praktikant
31. august 2006 - 10:14 #5
yeah min skulle også have set sådan ud:

<? if(!empty($_GET['page'])) { include($_GET['page'] . ".php"); } else { include("main.php"); } ?>

Men det er klart nielles ;)
Avatar billede oldschool Nybegynder
31. august 2006 - 10:16 #6
He så fungerer din også, mange tak!
Jeg deler gerne da jeg synes det er super med flere så hurtige indslag. Også fedt og lærerigt at se forskellige måder at løse et (lille) problem...
Avatar billede oldschool Nybegynder
31. august 2006 - 10:18 #7
Har php includes egentligt nogle "ulemper" eller "limits"? Har fedtet rundt med iframes indtil for en time siden men det her ser da ud til at være noget mere godt...
Avatar billede coderdk Praktikant
31. august 2006 - 10:19 #8
cool :) hehe no offense, men så synes jeg også min er "pænere" - hvis E_ALL eller E_NOTICE error reporting er sat til vil du se en "Notice: Undefined index 'page' on line 2" ved nielles, hvis page ikke er sat - Det tager min højde for ;-D
Avatar billede coderdk Praktikant
31. august 2006 - 10:20 #9
Ulemper? Ikke hvad jeg ved af - Det er kun plusser ;)
Avatar billede oldschool Nybegynder
31. august 2006 - 10:21 #10
He he ok, så vil jeg da bruge den!
Avatar billede oldschool Nybegynder
31. august 2006 - 10:21 #11
Lyder godt, indtil nu ser det ihvertfald ud til at være helt perfekt for mine behov:)
Avatar billede nielle Nybegynder
31. august 2006 - 10:25 #12
Deler gerne :^)
Avatar billede oldschool Nybegynder
31. august 2006 - 10:26 #13
Så skal i have mange tak for hjælpen!
Avatar billede nielle Nybegynder
31. august 2006 - 10:26 #14
<?
$page = $_GET["page"];
if(!empty($page)) { include("$page.php"); } else { include("main.php"); }
?>
Avatar billede Slettet bruger
31. august 2006 - 10:30 #15
Jeg ville nu lige tjekke om filen findes, for at undgå fejl osv.
<?PHP
$page = $_GET['page'];
if(isset($page)) {
if(file_exist($page.".php")) {
  include($page.".php");
} else {
  include("main.php");
}
} else {
include("main.php");
}?>
Avatar billede oldschool Nybegynder
31. august 2006 - 10:33 #16
Coldgate: Takker, men den melder en fejl ved file_exist funktionen...
Avatar billede Slettet bruger
31. august 2006 - 11:02 #17
Fordi det skal rettes til: file_exists();

<?PHP
$page = $_GET['page'];
if(isset($page)) {
if(file_exists($page.".php")) {
  include($page.".php");
} else {
  include("main.php");
}
} else {
include("main.php");
}
?>
Avatar billede oldschool Nybegynder
31. august 2006 - 11:10 #18
Tak, nu virker det:)

Har delt point ud, men har smidt lidt karma;) Håber det ok!
Avatar billede nielle Nybegynder
31. august 2006 - 11:40 #19
Eller sådan her:

<?PHP
$page = $_GET['page'];
if (isset($page) && file_exists($page.".php")) {
    include($page.".php");
} else {
    include("main.php");
}
?>
Avatar billede coderdk Praktikant
31. august 2006 - 11:46 #20
Du kan også kigge på dette spørgsmål, som minder meget om det: http://www.eksperten.dk/spm/728830 :)
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