Invenzzia »

Pages: [1]   Go Down
  Print  
Author Topic: OPTv2: Widoczny prolog w trybie debug i blad wyswietlania strony bez niego.  (Read 599 times)
0 Members and 2 Guests are viewing this topic.
gorky_park
User

Offline Offline

Posts: 1


View Profile
« on: October 29, 2009, 11:54:01 »

Witam serdecznie,
po przeczytaniu wszystkich artykułow na wiki oraz sporej czesci dokumentacji, postanowilem uczynic OPT 'moim' systemem szablonow, czyli uzywac go w swoich aplikacjach. Po wielu probach ciagle leze na lopatkach. Zapewne problem jest banalny ale po wielu dniach (wiem, wstyd) ciagle nie moge odnalezc rozwiazania swojego problemu. Lecz powiedzialem sobie 'ten albo zaden' i jestem zdeterminowany aby osiagnac swoj cel.
Na poczatek troche zrodel:

front controller:

Code:
$tpl = new Opt_Class;
$tpl -> sourceDir = TEMPLATES;
$tpl -> compileDir = TEMPLATES_C;
$tpl -> contentType = Opt_Output_Http::XHTML;
$tpl -> prologRequired = TRUE;
$tpl -> debugConsole = TRUE;
$tpl -> errorReporting = E_ALL | E_NOTICE;
$tpl -> setup();

if(isset($_POST['rejestracja']) && $_POST['rejestracja'] === 'true') {
$user = new Users();
$user -> add($_POST);

$menuView = new Opt_View('user_register_menu.tpl');
$contentView = new Opt_View('user_register_confirm.tpl');
}
else {
$menuView = new Opt_View('user_register_menu.tpl');
$contentView = new Opt_View('user_register_form.tpl');
}

$layoutView = new Opt_View('layout.tpl');
$layoutView -> contentType = 'text/html; charset=UTF-8';
$layoutView -> menuView = array(0 =>
array('view' => $menuView)
);
$layoutView -> contentView = array(0 =>
array('view' => $contentView)
);

$out = new Opt_Output_Http;
$out -> setContentType(Opt_Output_Http::XHTML, 'utf-8');
$out -> render($layoutView);

layout.tpl (glowny szablon):

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no" ?>
<opt:root>
<opt:prolog />
<opt:dtd template="xhtml10transitional" />
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="pl" lang="pl">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<link rel="stylesheet" type="text/css" href="templates/css/style.css" />
<title>layout</title>
</head>
<body>
<div id="CONTAINER">

<div id="HEADER"><h1>to jest naglowek</h1></div>
<div id="MENU">
<opt:section name="menuView">
<opt:include from="menuView" />
</opt:section>
</div>

<div id="CONTENT">
<opt:section name="contentView">
<opt:include from="contentView"/>
</opt:section>
</div>

</div>
<div id="FOOTER">footer</div>
</body>
</html>
</opt:root>

menu.tpl:

Code:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<opt:root>
<ul>
<li><a href="index.php">Anuluj rejestrację!</a></li>
</ul>
</opt:root>

W czym problem? Tak jak w temacie. W trybie debugConsole wszystko wydaje sie byc w porzadku, procz pojawiajacej sie deklaracji XML w kazdym widoku. To raz. Jesli wylacze tryb debugConsole pojawia sie taki o to komunikat w przegladarce (FF jesli chodzi o scislosc, inaczej zachowuje sie IE8, po prostu jest komunikat o niedostepnosci witryny):


XML Parsing Error: no element found
Location: http://localhost/sklep/register.php
Line Number 1, Column 1:


ponadto nie mam mozliwosci podejrzenia zrodla strony.

Apache 2.2, PHP 5.3, win32
Logged
Zyx
Your programmer
Administrator
User
*****
Offline Offline

Posts: 291



View Profile WWW
« Reply #1 on: October 30, 2009, 11:39:13 »

Witaj,

nie możesz podejrzeć źródła w przeglądarce, ale możesz podejrzeć źródło skompilowanego szablonu z katalogu compileDir. Akurat prolog dokumentu poza jednym elementem jest generowany jako statyczny tekst, więc powinno to na coś naprowadzić.

Na początek spróbuj zapisać znaczniki opt:prolog i opt:dtd bez początkowych wcięć. Być może problem leży właśnie w ich obecności. Sprawdzałeś przykład guestbook z katalogu /examples? Jest to działający przykład korzystający właśnie z prologRequired.
Logged

PozDrX, Zyx
---Invenzzia group---
Pages: [1]   Go Up
  Print  
 
Jump to:  

Subject Started by Replies Views Last post
OPTv2: Renderowanie drzewka kategorii Agares 1 1153 Last post August 02, 2008, 13:08:01
by Zyx
Pomóż promować projekty Invenzzii! Zyx 3 1248 Last post March 05, 2009, 14:16:47
by megaweb
OPTv2: Main tpl parced but opt:include view not parce amichelin 5 1969 Last post May 03, 2009, 16:03:37
by eXtreme
OPTv2: Jak ograniczyć includowanie szablonów nediam 3 828 Last post March 26, 2009, 21:40:07
by eXtreme
OPTv2: kod śledzenia Google Analytics poliman 3 533 Last post December 29, 2009, 19:48:00
by eXtreme