PHP Include for HTML?
У меня есть навигационная панель, изображение и заголовок, который я буду включать в каждую страницу моего сайта, поэтому я хотел использовать php include для ссылки на этот код на нескольких страницах. Тем не менее, я думаю, что у меня может быть синтаксис неправильный или что-то, потому что он ничего не делает, когда я его загружаю. Вот некоторые фрагменты кода:
<!-- sample page --> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <?php include ('headings.php'); ?> </head> <body> <?php include ('navbar.php'); ?> <?php include ('image.php'); ?> </body> </html>
navbar.php
<?php echo '<ul id="nav"> <li> <a href="Home.html">Home</a> </li> <li> <a>About Me</a> <ul> <li> <a href="Career.html">Career</a> </li> <li> <a href="Coding.html">Coding</a> </li> <li> <a href="Personal.html">Personal</a> </li> </ul> </li> <li> <a href="Travels.html">Travel</a> </li> <li> <a href="Contact.html">Contact</a> </li> </ul>'; ?>
Спасибо за помощь!
Вы можете использовать
php
код в файлах с расширением.php
и только там (iff другой не определен в настройках вашего сервера).Просто переименуйте свой файл
*.html
в*.php
Если вы хотите разрешить обработку
php
кода в файлах разного формата, у вас есть два варианта:1) Изменение
httpd.conf
чтобы разрешить это для всех проектов на вашем сервере, добавив:2) Создание файла
.htaccess
в вашем отдельном главном каталоге проекта с помощью:Для второго варианта вам нужно разрешить использование файлов
.htaccess
в вашемhttpd.conf
, добавив следующие настройки:* это правильно для HTTP-сервера Apache
Вам не нужно второпять информацию внутри стороны этого файла php. В php include будет автоматически включаться любой HTML-файл в этот файл.
Убедитесь, что вы используете индекс с расширением .php, .html не будет использовать php. (Если вы не заявляете, что ваш сервер обрабатывает файлы .html в противном случае)
Убедитесь, что ваши пути правильно настроены. Кстати, вы указали, что ваш файл header.php / navbar.php / image.php должен находиться в вашем корневом файле. Итак, ваш корень должен выглядеть так:
index.php
navbar.php
image.php
header.php
В противном случае, если эти файлы PHP находятся в папке с именем
/includes/
, она должна выглядеть так:Попытайтесь получить некоторую отладочную информацию, может быть, что путь к файлу неправильный, например.
Попробуйте эти две вещи: – Добавьте эту строку в начало своей страницы:
Это приведет к печати всех ошибок / предупреждений / уведомлений на странице, поэтому, если есть какие-либо проблемы, вы получаете текстовое сообщение, описывающее его, а не пустую страницу
Кроме того, вы можете изменить include (), чтобы потребовать ()
Это вызовет ошибку FATAL. PHP не может загружать требуемые страницы и должен помочь вам лучше отслеживать, что происходит неправильно.
Вы можете размещать здесь описания ошибок, если они есть, и вы не можете понять, что это значит.
Вот пошаговый процесс для включения PHP-кода в html-файл (Tested)
Если PHP работает, остается только один шаг, чтобы использовать PHP-скрипты в файлах с расширениями * .html или * .htm. Волшебное слово «.htaccess». Пожалуйста, ознакомьтесь с определением .htaccess в Википедии, чтобы узнать больше об этом. Согласно Википедии, это «файл конфигурации на уровне каталогов, который позволяет децентрализовать управление конфигурацией веб-сервера».
Возможно, вы можете использовать такой файл конфигурации .htaccess для своей цели. В нашем случае вы хотите, чтобы веб-сервер обрабатывал файлы HTML, такие как файлы PHP.
Сначала создайте пустой текстовый файл и назовите его «.htaccess». Вы можете спросить себя, почему имя файла начинается с точки. В Unix-подобных системах это означает, что dot-файл является скрытым файлом. (Примечание. Если ваша операционная система не позволяет именам файлов, начинающимся с точки, просто называть файл «xyz.htaccess» временно. Как только вы загрузите его на свой веб-сервер на более позднем этапе, вы можете переименовать файл в онлайн ». htaccess "). Затем откройте файл с помощью простого текстового редактора, такого как« Редактор »в MS Windows. Вставьте следующую строку в файл: AddType application / x-httpd-php .html .htm Если это не сработает, удалите строку из вашего файла и вставьте в нее эту альтернативную строку, для PHP5: приложение AddType / x- httpd-php5 .html .htm Теперь загрузите файл .htaccess в корневую директорию вашего веб-сервера. Убедитесь, что имя файла «.htaccess». Теперь ваш веб-сервер должен разбирать файлы * .htm и * .html, такие как файлы PHP.
Вы можете попробовать, если он работает, создав HTML-файл, как показано ниже. Назовите его «php-in-html-test.htm», вставьте в него следующий код и загрузите его в корневой каталог вашего веб-сервера:
Попробуйте открыть файл в своем браузере, набрав: http://www.your-domain.com/php-in-html-test.htm (еще раз, пожалуйста, замените your-domain.com своим собственным доменом .. .) Если ваш браузер показывает фразу «Это работает!» все работает отлично, и вы можете использовать PHP в. * html и * .htm-файлах с этого момента. Однако, если нет, попробуйте использовать альтернативную строку в файле .htaccess, как мы показали выше. Если все еще не работает, обратитесь к вашему провайдеру хостинга.
Я понял, что простое решение для PHP включает в себя материал. Просто переименуйте все ваши .html-файлы в .php, и вы хорошо поедете.
Во-первых: что говорили другие. Забудьте инструкцию echo и просто напишите свой navbar.php как обычный файл HTML.
Во-вторых: ваши включенные пути, вероятно, перепутаны. Чтобы включить файлы, находящиеся в том же каталоге, что и текущий файл, используйте
__DIR__
: