Strona startowa Ludzie pragną czasami się rozstawać, żeby móc tęsknić, czekać i cieszyć się z powrotem.– Jak ci na imię, pięknotko?Odpowiedziała mi niskim głosem:– Na imię mi Merit i nie jest tu w zwyczaju nazywać mnie pięknotką, jak to robią...– A tutejsiście? – Nie – odpowiedział na migi starzec – Zaś może z Mazowsza? – Tak...RegułyJeśli przyjrzysz się specjalizacji char_traits dla typu wchar_t, zauważysz, że jest onpraktycznie identyczny jak odpowiednik dla typu char:4...Nie znosił symulowania ataku kryszain, straszliwego bólu gło­wy połączonego z uczuciem dezorientacji, nie mającego odpowied­nika w jakiejkolwiek...– Nie jestem pewien – odpowiedział Fenton...Renę Mallibeau, najbardziej zapalony winiarz kolonii, wciąż nie znalazł dla swoich winnic terenu o odpowiedniej glebie i nachyleniu, chociaż otwierał ciągle...Jeden tylko may Woodyjowski cierpia nad tym niemao, a gdy Skrzetuski prbowa wla mu otuch w serce, odpowiedzia:- Dobrze tobie, bo gdy jeno zechcesz, Anusia...Ciało zniszczyć jest łatwo, a w przypadku obrony własnej lub bliźnich, zwłaszcza zależnych od naszej opieki (odpowiadam ci, bo znów pytasz o wojny twojego narodu;...- Dodger! - głos Teresy był odpowiednio karcący, ale Dodger dostrzegł aluzję w jej tłumionym uśmiechu...- Może jest żywa, a może zamieszkał w niej duch twojego brata - odpowiedziała znachorka...
 

Ludzie pragną czasami się rozstawać, żeby móc tęsknić, czekać i cieszyć się z powrotem.

W książce A Methodology for Client/Server and Web Application Development Roger Fournier sugeruje, że wspólne fragmenty lub moduły aplikacji zawsze powinny być najpierw projektowane, tworzone i testowane a następnie udostępniane dla całej korporacji. Komponenty te powinny zawierać nie tylko moduły kodu, ale również procedury przechowywane w bazie danych, wyzwalacze i zdalne procedury (Fournier, 1998).
W kolejnych częściach zostanie opisane kilka metod implementacji tych metod. Dodatkowo w tym
rozdziale jak również w rozdziale 14 „Witryny oparte o szablony”, dołączone są kompletne przykłady zastosowania tych technik. Niektóre przykłady w kolejnych częściach pokazują techniki jakich należy unikać.
Oddzielenie i integracja przy użyciu wbudowanych funkcji
PHP Ponieważ PHP zawiera bogaty zestaw funkcji i narzędzi, oddzielenie modułów kodu od modułów
interfejsu może być zrealizowane bezpośrednio przy pomocy narzędzi języka. Część ta opisuje kilka sposobów zrealizowania tego zadania.
Motywacja
Pierwszą motywacją dla oddzielenia elementów HTML od kodu jest umożliwienie ponownego
wykorzystania kodu oraz jego łatwiejszej konserwacji. W wszystkich przykładach umieszczonych do tej pory w książce, HTML i PHP były wymieszane w celu otrzymania krótkich i prostych przykładów. W przypadku tworzenia kodu prawdziwego kodu technika ta jest niewygodna i powoduje powstanie trudnych do analizy skryptów. Dla przykładu, skrypt z wydruku 12.1 zawiera fragment strony WWW ze zintegrowanym kodem PHP i HTML.
Wydruk 12.1. PHP i HTML w jednym skrypcie
<?php
if ( $aShowForm == True ) {
?>
<p>
<font face="Arial" size="3">
<b>
<?php
print( $aQuestion );
?>
</b>
<form action="response.php3" method="POST">
<?php if (!empty( $UserID )) { ?>
<input type="Hidden" name="UserID" value="<?php print($aUserID );
?>">
<?php } ?>
<?php if ($aQuestionID != -1 ) { ?>
<input type="Hidden" name="QuestionID"
value="<?php print($aQuestionID ); ?>">
<?php } ?>
<ul>
<font face="Arial" size="2">
<!--wyświetl możliwe odpowiedzi-->
<?php
if ( $aQuestionID != -1 )
{
if ($aSortOrd != 0 ) //Sortowanie alfabetyczne
{
$aSQL = "SELECT * FROM Answers WHERE (QuestionID=$aQuestionID)
ORDER BY Text";
}
else
{
$aSQL = "SELECT * FROM Answers WHERE (QuestionID=$aQuestionID)";
}
$aDB->SetSQL( $aSQL );
Rozdział 12 – Oddzielanie kodu HTML od PHP
146

Oprócz tego, że przykład jest niekompletny, Wydruk 12.1 pokazuje jak skomplikowana może stać się strona HTML z wbudowanym PHP. Nawet pomocą edytorów wyróżniających składnię, zlokalizowanie bloków kodu może być trudne.
Problemy z utrzymaniem tego typu skryptów wykraczają jednak poza podstawowe problemy z
czytelnością kodu. Równie trudno jest wprowadzać zmiany zarówno do kodu, jak i wyglądu strony bez wpływania na inne elementy. Na przykład, załóżmy, że projektanci uaktualnią wygląd przycisków nawigacji i muszą być one umieszczone w witrynie. Odpowiedź na pytanie kto powinien wprowadzić zmiany jest trudna, ponieważ projektanci mogą nie mieć wystarczająco dużo doświadczenia, aby nie popsuć kodu podczas wprowadzania zmian, a programiści mogą być zmuszeni uaktualniać fragmenty kodu jedynie w celu zmiany wyglądu. W obu przypadkach wynikiem są opóźnienia w projekcie. Można tego uniknąć stosując lepsze praktyki projektowe.
Jeżeli twoja firma zamierza dostarczać wysokiej jakości i łatwe do konserwacji aplikacje WWW,
tworzenie stron za pomocą przedstawionej metody nie powinno być stosowane. Dodatkowo, jeżeli