Включить html-страницы в файл php

Я хотел бы создать шаблон с использованием html и css, поэтому я создал следующий файл template.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Application</title> <link href="CSS/layout.css" rel="stylesheet" /> <script src=""></script> </head> <body> <div class="wrapper"> <div class="header"> <!--<div class="header_left"></div> <div class="header_right"> --> <h3>Application</h3> <h4>**** Project ****</h4> </div> <div class="navbar"> <ul class="mainnavbar"> <li><a href="#">Home</a></li> <li><a href="login.html">About</a></li> <li><a href="#">Description</a></li> <li><a href="#">Contact Me</a></li> </ul> </div> <div class="mainbody"> <div class="leftcol"> <div class="left_navbar"> <ul class="left_inner"> <li><a href="#">Login</a></li> <li><a href="#">About</a></li> <li><a href="#">Description</a></li> <li><a href="#">Contact me</a></li> </ul> </div> </div> <div class="midcol"> Center </div> <div class="rightcol"> Right Column </div> </div> <div class="footer">Designed By <a href="">Me</a></div> </div> </body> </html> 

Поскольку я хочу создать динамический веб-сайт, я хочу разделить этот template.html на index.php, header.php, navbar.php, home.php и footer.php. Поэтому я сделал следующее:

index.php

 <?php include("includes/header.html"); include("includes/navbar.html"); include("includes/home.html"); include("includes/footer.html"); ?> в <?php include("includes/header.html"); include("includes/navbar.html"); include("includes/home.html"); include("includes/footer.html"); ?> в <?php include("includes/header.html"); include("includes/navbar.html"); include("includes/home.html"); include("includes/footer.html"); ?> в <?php include("includes/header.html"); include("includes/navbar.html"); include("includes/home.html"); include("includes/footer.html"); ?> в <?php include("includes/header.html"); include("includes/navbar.html"); include("includes/home.html"); include("includes/footer.html"); ?> 

header.html

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Application</title> <link href="CSS/layout.css" rel="stylesheet" /> <script src=""></script> </head> <body> <div class="wrapper"> <div class="header"> <!--<div class="header_left"></div> <div class="header_right"> --> <h3>Application</h3> <h4>****Project ****</h4> </div> 

navbar.html

 <div class="navbar"> <ul class="mainnavbar"> <li><a href="#">Home</a></li> <li><a href="login.html">About</a></li> <li><a href="#">Description</a></li> <li><a href="#">Contact Me</a></li> </ul> </div> 

home.html

 <div class="mainbody"> <div class="leftcol"> <div class="left_navbar"> <ul class="left_inner"> <li><a href="#">Login</a></li> <li><a href="#">About</a></li> <li><a href="#">Description</a></li> <li><a href="#">Contact me</a></li> </ul> </div> </div> <div class="midcol"> Center </div> <div class="rightcol"> Right Column </div> </div> 

footer.html

 <div class="footer">Designed By <a href="">me</a></div> </div> </body> </html> 

У меня есть эти файлы в папке с именем includes. Я просто разделил файл template.html в 4 html-файлах, а затем вызвал их из index.php, но я просто получаю белую страницу при запуске index.php в браузерах. Что-то не хватает?

Ваш код (синтаксис и идея с включением html) в порядке. Это должно сработать.

Вам нужно искать проблемы где-то еще.

Возможно, у вас есть проблема с:

  • настройка веб-сервера (виртуальные хосты, каталоги и т. д.)
  • неправильный URL-адрес / неправильный сервер (обновление URL-адреса веб-сервера, но вы работаете на локальном XAMPP)
  • (однако Apache обычно должен сообщать об ошибке в этом случае)

Может оказаться полезным просмотр журналов ошибок веб-сервера.

Убедитесь, что вы просто не запустили template.html просто открыв его локально в браузере.

Поскольку PHP является языком на стороне сервера , вам нужно будет запустить страницу на реальном сервере на локальном сервере, таком как Apache . WAMP также является хорошим инструментом при локальном создании сайтов, для которых требуется PHP.

Вы также можете использовать file_get_contents("path_to_file/file.html") вместо include()

Но только если есть HTML-контент, а не PHP