ugrás a tartalomhoz

Includeolási probléma

Atya · 2003. Dec. 28. (V), 11.19
A prog.hu tudástárjából(ott is feltettem):
Atya kérdése
privát | 2003.12.27. 22:00 | válasz

Index.php:
<?
include ("loader_left.php");
include ("loader_design.php");
?>
Loader_left.php:


<?

//-------File +nyitás ----------
$cfile = fopen("config.txt", "r"); // cfile ~ config file
include("functions.php");


//-------Pozícionálás ------------
pose(2, $cfile);

//-------A linkelendő fájlok kiszedése----------
$n="";
While ($n != "!") {
$n = "";
$nev = "";
WHILE ($n != ";") { //NÉV
$n = fread($cfile, 1);
IF ($n == "!") {break;}
$nev = $nev.$n;
}
IF ($n!="!")linker($nev);
}
fclose($cfile);


//-------------Adatok Linkelése---------
FUNCTION linker($nev)
{
$len = strlen($nev); // ; Levágása
$nev = substr($nev, 0, $len-1);
$file = "out/".$nev.".php"; // egyberakás
Echo $file."<br>";
include($file); // Linkelés
//open($title); //Működnie kéne. Deklarálva a dizájn fájlban.
//cim($content);
//close();
}
?>
loader_design.php:




<?

//-------File +nyitás ----------
$cfile = fopen("config.txt", "r"); // cfile ~ config file
include("functions.php");


//-------Pozícionálás ------------
pose(0, $cfile);

//-------A linkelendő fájlok kiszedése----------
$n="";
While ($n != "!") {
$n = "";
$nev = "";
WHILE ($n != ";") { //NÉV
$n = fread($cfile, 1);
IF ($n == "!") {break;}
$nev = $nev.$n;
}
IF ($n!="!")linker($nev);
}
fclose($cfile);


//-------------Adatok Linkelése---------
FUNCTION linker($nev)
{
$len = strlen($nev); // ; Levágása
$nev = substr($nev, 0, $len-1);
$file = "out/".$nev.".php"; // egyberakás
Echo $file."<br>";
include($file); // Linkelés
}

?>
Mindíg csak azt írja ki, ami az első helyen van include olva. Mi a hiba?

.....


Atya hozzászólása Arbiter (23:18) részére
előzmény | privát | 2003.12.28. 09:28 | válasz

Mindíg azt írja ki, ami az első helyen van...
Satsz pör Kábé annyit jelent, hogy ha a loader_leftet includeolom, akkor kiír három fájlnevet, amik a konfig fálban meg vannak adva.
Viszont ha a loader_design van először, akkor egy fájlt includol, ami a konfig fájlban meg van adva.
Tehát egyik eset sem lehetsáéges az általad felsoroltak közül , különdben egyik eset nem működne(attól függően, hogy melyik van előbb includeolva.
A functions.php -t direkt incudeoltam 2szer, mert lehet, hogy csak egyet fogok belinkelni(loader_left, loader_design), és ha pl a left ben van, és csak 1szer includeolnaám, akkor ugye... Nem tudnám használni.
functions.php:


<?
FUNCTION pose($times, $cfile) {
for($i=0;$i<$times;$i++)
{
$temp="";
while ($temp != "!")
{
$temp = fread($cfile, 1);
}
}
}
?>
Valamint a konfig fájl:


CSS;!menu;asd!ASDW;Login;Languages;!*!*!
A csillagok feldolgozását majd később megoldom. Mos odáig úgy sem használom a fájlt.
A design ezt: CSS
A left pedig: ASDW Login Languages
tölti be...

Hát ez van. Remélem kapok végre segítséget...
 
1

Re: Includeolási probléma

Atya · 2003. Dec. 28. (V), 11.46
Minden fájlban a require_once -t kell használni include helyett. Csak 1 helyen elgépeltem, és már bukott is... De rájöttem :P