От автора: если надумали создавать динамический ресурс, то выводить страницу в PHP вам придется! Тут, как говорится, без вариантов. Не умеете? Это дело поправимое. Главное, чтоб присутствовало желание.
А слабо PHP в PHP?
Вы думали, я буду вам про динамические ресурсы заливать? Нет! С этих штанов мы уже выросли. Пришла пора поскрести по сусекам, набраться практики в решении насущно-программных дел. Ну, вот например, как можно код скрипта PHP вывести на странице?
Постараюсь реализовать данный функционал. Пока на ум приходит только комбинированное использование двух функций: file_get_contents () и htmlspecialchars(). Код решения. Хотя какой тут код – всего несколько строк :).
1 2 3 4 5 |
<?php $script = file_get_contents("country.php"); $txt = htmlspecialchars($script); echo $txt; ?> |
Но даже и этот короткий скрипт можно упростить и вывести код PHP страницы всего одной программной строкой. Не верите? Вот доказательство:
1 2 3 4 5 |
<?php echo htmlspecialchars(file_get_contents("country.php")); ?> |
Отображаем веб-страницу
Самым «щекотливым» вопросом, который задает себе чуть ли не каждый новичок, касается отображения разметки веб-страницы с помощью PHP. Тут возможны два варианта:
Если кода HTML мало, то его выводят с помощью конструкции echo. Пример реализации:
1 2 3 4 5 |
<?php echo "<div style='background-color:#33FFCC; box-shadow:rgb(51,102,255);width: 200px'> <p style='font-size:xx-large;color: rgb(204,51,102)'>Hello, <b>people</b>!</p> </div>"; ?> |
Если разметки много. То есть нужно отобразить весь документ, тогда HTML просто размещается в файле с расширением .php. Пример, как вывести страницу в PHP:
1 2 3 4 5 6 7 8 9 10 |
<html> <head> <title>Документ без названия</title> </head> <body> <div style="background-color:#33FFCC; box-shadow:rgb(51,102,255);width: 200px;"> <p style="font-size:xx-large;color: rgb(204,51,102)">Hello, <b>people</b>!</p> </div> </body> </html> |
Документ в документе?
Да, и такое возможно. Если вы хоть немного знаете HTML, то сталкивались с фреймами. С помощью этих элементов на одной веб-странице можно отобразить часть другой. То же самое достигается и средствами PHP. Давайте выведем на новой странице блочный элемент с ранее созданной:
1 2 3 4 |
<?php echo "<iframe src='chernovik.php' width='200' height='100' align='left'scrolling='no'> </iframe>"; ?> |
Но с фреймами не так все легко. Скажу вам по секрету, что на некоторых хостингах реализована защита от использования данных элементом сторонними сайтами. Да и неоднозначно эта технология воспринимается среди аудитории интернета. В свое время фреймы широко использовались в корыстных целях.
Уж лучше использовать PHP, чтобы вывести div с другой страницы. На базе предыдущего примера реализуем более подходящий, удобный и безопасный вариант. Для этого в первоначальном файле с разметкой оставим только код div:
1 2 3 |
<div style="background-color:#33FFCC; box-shadow:rgb(51,102,255);width: 200px;"> <p style="font-size:xx-large;color: rgb(204,51,102)">Hello, <b>people</b>!</p> </div> |
А в файле frame.php с помощью include подключим файл с разметкой, которую нужно отобразить:
1 2 3 |
<?php include "chernovik.php" ?> |
Вот теперь вы сможете спокойно отобразить содержимое одной страницы на другой. Только, чур, не использовать полученные знания для «подглядывания» за соседним ресурсом :).