Az eddigi weboldalaim készítése során FRAMET használtam?!
De mára meguntam a szokásos scrollozható dolgot.. azt szeretném hogy ha a weboldalba betöltök egy másik oldalt, az kinyújtsa az oldalt ha szükséges..
<?php
if(isset($_GET["id"]) && $_GET["id"]!="") {
$id = $_GET["id"];
if(file_exists("pages/".$id.".php")) {
include_once ("pages/".$id.".php");
} else {
include_once ("pages/404.php");
}
} else {
include_once("forum/index.php");
}
?>
Ezt próbálgattam mostanában de, a jelen esetben a fórum, amit be kellene töltenie hibás.. külön megnyitva, csak a fórumot működőképes.. mi lehet a probléma?
Mi a hiba? Mit ír ki?
A fájlhivatkozások nem működnek? Mert akkor az a helyzet, hogy az include szövegszerűen átmásolja a forum/index.php kódját a hívás helyére, ezáltal, ha a forum/index.php-ban vannak relatív fájlhivatkozások (include-ok), akkor azok nem fognak működni. Értsd: a forum mappán belüli fájlokat keresi, de nem találja, mert nem a forum mappából fut a kód.
Valószínűleg az a probléma, hogy a fórum indexe újra akarja hívni kreálni a sessiont, új html fejlécet akar betölteni, stb... de az már a fő fájlban megtörtént, ezért hibát jelez.
A frame-s megoldásnál ez működhetett, hiszen minden frame ablak külön folyamatként, külön weboldalként igényelte a külön http header-t, de a php include-dal nem nyithatsz új header-t, mert a header már létre van hozva, és az included tartalom ezen folyamat része.
Ha megnézed a fórum index.php oldalát, az komplett önnálló oldalként működik, de ha a pages/404.php fájl nyitod ki láthatod, hogy az nem hív meg külön header-t, vagy http fejlecet (sőt még body-t se!).
Warning: fopen(vendegkonyv/data.txt): failed to open stream: No such file or directory in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 29
Warning: filesize(): stat failed for vendegkonyv/data.txt in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 30
Warning: fread() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 30
Warning: fclose() expects parameter 1 to be resource, boolean given in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 31
Notice: Undefined offset: 1 in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 39
Notice: Undefined offset: 2 in C:\Program Files (x86)\EasyPHP-12.1\www\vegikez_site\oldal\forum\vendegkonyv\guestbook.php on line 40
| 1970.01.01 01:00
Van benne include, mármint az index fájlban.
Tartalma:
<!DOCTYPE html>
<html>
<head>
<link rel="stylesheet" type="text/css" href="../style.css" />
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Vendégkönyv</title>
</head>
<body class="bodyforum">
<div id="container">
<?php
$gb_homepage = " [link]
$gb_path = "vendegkonyv/";
include("vendegkonyv/guestbook.php");
?>
</div>
</body>
</html>
hogy kellene átírnom hogy működjön?
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!