Avatar billede bow Nybegynder
03. maj 2009 - 14:50 Der er 8 kommentarer og
1 løsning

PHP Include mappe/file

Hej

Jeg har et scripts som som loader filer men nu vil jeg godt have den til at hente filer i en mappe

Eks modules.php?name=test
skal include /modules/test/index.php

og Eks modules.php?name=test&test2
skal include /modules/test/test.php

Lige nu har jeg denne her kode men skal nok tilrettes

Håber nogen kan hjælpe

<?php
session_start();
include($_SERVER["DOCUMENT_ROOT"]."/header.php");

$path = 'modules/';
$extension = '.php';
if(isset($HTTP_GET_VARS['name']))
{
    $p = $HTTP_GET_VARS['name'];
}
else
{
    $p = 'index';
}

switch($p)
{
    case 'index':
    require($path. 'welcome.php');
    break;
}
 
  if(isset($HTTP_GET_VARS['name']))
{
  $filename = $path.$p.$extension;

@(include($filename)) OR die ("<br>Den side som du prøver at kalde findes desværre ikke");
  }

include('footer.php');

?>
Avatar billede labisama Nybegynder
03. maj 2009 - 17:21 #1
Gammelt script du har fat i der?

Start med at ændre $HTTP_GET_VARS til $_GET
Avatar billede bow Nybegynder
03. maj 2009 - 17:46 #2
Hehe ved ik om det er gammelt har brugt det siden 2007

bare der er noget der virker ved ikke om der er noget der er bedere
Avatar billede bow Nybegynder
03. maj 2009 - 18:07 #3
Denne her virker med at loade en mappe
eks modules.php?page=test

if (!isset($mod_file)) { $mod_file="index"; }
$name = $_GET['page'];
$modpath = "modules/$name/".$mod_file.".php";
$file = $modpath; 
if (file_exists($modpath)) { 
  include $file; 
}else{ 
  echo 'Error'; 


men så er spølsmålet bar hvodan man loader en fil i mappen
eks modules.php?page=test&test2 eller modules.php?page=test&load=test2
Avatar billede labisama Nybegynder
03. maj 2009 - 19:34 #4
$mod_file = $_GET['load'];
$name = $_GET['page'];
$modpath = "modules/".$name."/".$mod_file.".php";
$file = $modpath;
if (file_exists($modpath)) {
  include $file;
}else{
  echo 'Error';
}

Prøv den.
Avatar billede bow Nybegynder
03. maj 2009 - 20:00 #5
Det virker næsten men får en fejl i $mod_file = $_GET['load'];

den kan vist ikke finde ud af om den skal loade  modules.php?page=test eller modules.php?page=test&load=test2

kan man sotere det sådan at den kan finde ud af hvad den kan?
Avatar billede bow Nybegynder
03. maj 2009 - 20:23 #6
jeg har prøvet med den her
men får den her Parse error: syntax error, unexpected T_STRING in /

$modpath = "modules/".$name."/".$name.".php";
$file = $modpath;


if ($_GET['page'].'))
{
  include $file; 
}
elseif ($_GET['load']))
{
include $file; 
}
else
{
  echo 'Error';
}
Avatar billede labisama Nybegynder
03. maj 2009 - 20:24 #7
$name = $_GET['page'];

if (isset($_GET['load'])) {
$mod_file = $_GET['load'];
$modpath = "modules/".$name."/".$mod_file.".php";
} else {
$modpath = "modules/".$name."/index.php";
}

$file = $modpath;
if (file_exists($modpath)) {
  include $file;
}else{
  echo 'Error';
}

Ved ikke om jeg har forstået det korrekt.
Avatar billede bow Nybegynder
03. maj 2009 - 20:28 #8
Hehe Nice Nu virker det
du er en guttermand

Sender du et svar så får du lige noget guld :)
Avatar billede labisama Nybegynder
03. maj 2009 - 20:28 #9
Hehe tak.

Det var godt at det virker nu.
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