To skrypt z ksiazki:
<?php
// Ta strona wykorzystuje mechanizm szeregowania obiektów.
require_once \"HtmlTemplate2.class\"; // Włączenie klasy.
require_once \"HtmlNavTemplate.class\"; // Włączenie klasy.
if ($HTTP_COOKIE_VARS['html_object']) {
$page->CreatePage();
} elseif ($HTTP_POST_VARS['submit']) {
$page = new HtmlNavTemplate (\"template4.inc\"); // Utworzenie egzemplarza klasy i wskazanie szablonu, który będzie używany przez t
aplikację.
$page->SetParameter (\"PAGE_TITLE\", $page_title); // Ustawienie tytułu strony.
$page->SetParameter (\"CSS_LINK\", \"style.css\"); // Ustawienie arkusza stylów.
$page->SetParameter (\"BG_COLOR\", $bg_color); // Ustawienie koloru tła.
$page->SetParameter (\"TEXT_COLOR\", $text_color); // Ustawienie koloru tekstu.
$page->SetParameter (\"TABLE_WIDTH\", $table_width); // Ustawienie szerokości tabeli.
$page->SetParameter (\"NAVIGATION_LINKS\", $page->DetermineLinks());
$page->SetParameter (\"PAGE_CONTENT\", \"Oto nasza strona.\"); // Ustawienie głównej zawartości.
setcookie (\"html_object\", urlencode (serialize($page)), time() + 100000, \"\", \"\", 0); $page->CreatePage();
} else {
$page = new HtmlNavTemplate (\"template4.inc\"); // Utworzenie egzemplarza klasy i wskazanie szablonu, który będzie używany przez t
aplikację.
$page->SetParameter (\"PAGE_TITLE\", \"Ustaw swoje preferencje!\"); // Ustawienie tytułu strony.
$page->SetParameter (\"CSS_LINK\", \"style.css\"); // Ustawienie arkusza stylów.
$page->SetParameter (\"BG_COLOR\", \"WHITE\"); // Ustawienie koloru tła.
$page->SetParameter (\"TEXT_COLOR\", \"BLACK\"); // Ustawienie koloru tekstu.
$page->SetParameter (\"TABLE_WIDTH\", \"100\"); // Ustawienie szerokości tabeli.
$page->SetParameter (\"NAVIGATION_LINKS\", $page->DetermineLinks());
$content = '<form action=\"index.php\" method=post>
<table border=0 width=\"90%\" cellspacing=\"2\" cellpadding=\"2\" align=\"center\">
<tr align=\"center\" valign=\"top\">
<td colspan=\"2\" align=\"center\" valign=\"top\">Ustaw swoje preferencje układu strony HTML</td>
</tr>
<tr align=\"center\" valign=\"top\">
<td width=\"50%\" align=\"right\" valign=\"top\">Tytuł strony:</td>
<td width=\"50%\" align=\"left\" valign=\"top\"><input type=\"text\" name=\"page_title\" size=\"20\" maxsize=\"50\"></td>
</tr>
<tr align=\"center\" valign=\"top\">
<td width=\"50%\" align=\"right\" valign=\"top\">Kolor tła:</td>
<td width=\"50%\" align=\"left\" valign=\"top\">
<select name=\"bg_color\">
<option value=\"white\">BIAŁY</option>
<option value=\"black\">CZARNY</option>
<option value=\"blue\">NIEBIESKI</option>
<option value=\"red\">CZERWONY</option>
<option value=\"green\">ZIELONY</option>
</select></td>
</tr>
<tr align=\"center\" valign=\"top\">
<td width=\"50%\" align=\"right\" valign=\"top\">Kolor tekstu:</td>
<td width=\"50%\" align=\"left\" valign=\"top\">
<select name=\"text_color\">
<option value=\"white\">BIAŁY</option>
<option value=\"black\">CZARNY</option>
<option value=\"blue\">NIEBIESKI</option>
<option value=\"red\">CZERWONY</option>
<option value=\"green\">ZIELONY</option>
</select></td>
</tr>
<tr align=\"center\" valign=\"top\">
<td width=\"50%\" align=\"right\" valign=\"top\">Szerokość tabeli (0-100):</td>
<td width=\"50%\" align=\"left\" valign=\"top\"><input type=\"text\" name=\"table_width\" size=\"3\" maxsize=\"3\"></td>
</tr>
<tr align=\"center\" valign=\"top\">
<td colspan=\"2\" align=\"center\" valign=\"top\"><input type=\"submit\" name=\"submit\" value=\"Ustaw preferencje\"></td>
</tr>
</table>
</form>';
$page->SetParameter (\"PAGE_CONTENT\", $content); // Ustawienie zawartości.
$page->CreatePage(); // Wysłanie strony do przeglądarki.
}
?>
działa wszystko w instrukcji else i elseif.... wsyztsko gra, ale.... gdy juz mam niby stworzony ten caly object i chce zeby zapamietal to co z formularza....czyli wykonal zaraz to co jest po if to mi mówi
Kod
Fatal error: Call to a member function on a non-object in index.php on line 11
Nie wiem w czym tkwi błąd.... czy to cos nie tak z tym serialize i unserialize?...
Ten post edytował pirat 26.09.2004, 10:51:46