Jak w zależności od rozszerzenia ( php lub ) dołączać lub nie dodatkową zawartość do tej samej strony WWW


[PHP] Jak w zależności od rozszerzenia (.php lub .html) dołączać lub nie dodatkową zawartość do tej samej strony WWW?

0x01 graphic

Chcesz na jednej stronie WWW, jeżeli ma rozszerzenie .php, dołączać pliki za pomocą funkcji include(), a przypadku gdy jej rozszerzenie jest .html nie mają być dołączane żadne pliki, a funkcja include() ma być ukryta.

0x01 graphic

Opisany przypadek nie występuje zbyt często w praktyce, nie mniej jednak musiałem zaprojektować stronę, która w zależności od jej rozszerzenia miała zachowywać się inaczej.

Gdy była to strona z rozszerzeniem .html i miała być oglądana np. na dysku lokalnym, nie powinno być do niej nic dołączane, ale gdy jej rozszerzenie zmieniało się na .php, miała dołączać nagłówek i stopkę charakterystyczną dla serwisu.

Chodziło o to, aby stworzyć jedną wersję kodu strony, który był taki sam dla wersji HTML i PHP, ale w wersji PHP pozwalałby dodatkowo umieszczać indywidualne nagłówki i stopkę. Problem polegał na tym, że trzeba było ukryć kod PHP na stronie HTML, ale nie mógł być ukryty na stronie PHP.

W pewnym sensie jedno wykluczało drugie i zwykły komentarz nie zdawał tutaj egzaminu, bo gdyby został zastosowany w wersji PHP, ukryłby również dołączany fragment za pomocą include(). Można sobie jednak poradzić z tym problemem względnie prosto. Wystarczy wkleić poniższy kod na taką "dwusystemową" stronę:

<!--

<?

echo "--".chr(62);

include("dolaczana.php");

echo chr(60)."!-- ";

?>

-->

Gdy strona ma rozszerzenie .html całość umieszczona jest w komentarzu i przeglądarka "nie widzi" kodu. Jednak gdy strona ma rozszerzenie PHP, wtedy wnętrze komentarza zostaje "wykonane", a więc znaki o kodach 62 i 60 przekształcane są na nawiasy trójkątne, co powoduje dodatkowe zamknięcie komentarza na górze i otwarcie na dole. W wyniku czego dołączany fragment strony staje się widoczny.

Można oczywiście zamykać komentarze na dołączanej stronie, ale nie zawsze jest to możliwe, jeżeli nie ma możliwości ingerowania w dołączane treści.



Wyszukiwarka

Podobne podstrony:
CZASOWNIKI ZMIENIAJĄCE ZNACZENIE W ZALEŻNOŚCI OD FORMY INFINITIVE lub GERUND exercises
jak zabrać się do założenia własnej strony www
Jak stworzyć zaawansowany test wyboru lub quiz, PHP Skrypty
Jak zapisać i potem odczytać grafikę lub dowolny plik w bazie danych, PHP Skrypty
Jak zmienić tło strony w zależności od aktualnej godziny, PHP Skrypty
inne, Pamięć2, WARUNKOWANIE INSTRUMENTALNE (sprawcze): proces, w którym reakcja staje się mniej lub
jak uzywajac szyfru cezara zakodowac lub odkodowac wiadomosc, PHP Skrypty
jak zapisac i potem odczytac grafikę lub dowolny plik w bazie danych, PHP Skrypty
Jak stworzyć zaawansowany test wyboru lub quiz, PHP Skrypty
Czyn człowieka jest dobry lub zły w zależności od tego
Zycie jest jak proces mozna je wygrac lub przegrac, rozwaz w oparciu o wybrane kreacje literackie
Jak wyliczyć czas generowania strony WWW lub wykonywania skryptu z dokładnością do mikrosekundy
Jak zrobić prawo jazdy kategorii B lub B1
Litania do Św Judy Tadeusza Patrona od spraw trudnych lub beznadziejnych
Jak zarejestrować autoresponder na Freebot lub Implebot
Jak policzyć ile plików (wszystkich lub określonego typu) znajduje się w wybranym katalogu
VAT 9 Deklaracja dla podatku od towarów i usług od importu usług lub dostawy dla której podatnikiem
Jak zrobić uniwersalne porcjowanie wyników na stronie, aby nie pokazywała się cała zawartość tablicy

więcej podobnych podstron