Máte web o deseti stránkách a nahoře na každé je stejné menu a dole stejná patička. Pak se rozhodnete přidat do menu jeden odkaz – a musíte ho ručně dopsat do všech deseti souborů. Otrava a na některý se snadno zapomene. PHP má na to elegantní řešení: společné části napíšete jednou do zvláštního souboru a na každou stránku je jen vložíte. Slouží k tomu příkaz include.
Co include dělá
Příkaz include vezme obsah jiného souboru a vloží ho přesně na místo, kde je zapsaný – jako by tam ten text byl odjakživa. Zápis je jednoduchý:
<?php include 'hlavicka.php'; ?>
Když si někdo stránku otevře, PHP na serveru tenhle řádek nahradí celým obsahem souboru hlavicka.php. Návštěvník o tom neví – vidí normální hotovou stránku.
Rozdělíme web na kousky
Vytvoříme dva soubory se společnými částmi. Do hlavicka.php dáme začátek stránky a menu:
<!DOCTYPE html>
<html lang="cs">
<head>
<meta charset="utf-8">
<title>Moje firma</title>
</head>
<body>
<nav>
<a href="index.php">Úvod</a>
<a href="sluzby.php">Služby</a>
<a href="kontakt.php">Kontakt</a>
</nav>
Do paticka.php dáme konec stránky:
<footer>© 2026 Moje firma</footer>
</body>
</html>
A teď je to krásné: každá stránka je najednou krátká a přehledná. index.php vypadá takhle:
<?php include 'hlavicka.php'; ?>
<h1>Vítejte</h1>
<p>Tohle je úvodní stránka.</p>
<?php include 'paticka.php'; ?>
Mezi vložením hlavičky a patičky je jen to, co je na dané stránce opravdu jiné. Všechno společné řeší ty dva soubory.
.php a web musí běžet na hostingu, který PHP umí (většina českých hostingů ano). V souboru s příponou .html nebo při otevření přímo z disku include nefunguje.Největší výhoda
Chcete do menu přidat odkaz „Ceník"? Dopíšete ho jen jednou do hlavicka.php a objeví se okamžitě na všech stránkách, které ji vkládají. Žádné proklikávání deseti souborů a žádné riziko, že na jednu zapomenete. Přesně takhle ostatně funguje i tenhle web.
include, nebo require?
Vedle include existuje skoro stejný příkaz require. Liší se jen v tom, co udělají, když vkládaný soubor chybí:
include– soubor nenajde, jen varuje a stránka běží dál (byť rozbitá).require– soubor nenajde a stránku rovnou zastaví.
U věcí, bez kterých stránka nedává smysl (hlavička, připojení k databázi), se hodí require – chyba se tím pádem neschová. Pro doplňkové kousky bohatě stačí include.
Časté chyby
- Špatná cesta k souboru.
includehledá soubor vůči umístění stránky. Když je hlavička ve složcecasti/, napišteinclude 'casti/hlavicka.php';. - Stránka má příponu .html. Pak se PHP nespustí a návštěvník uvidí přímo napsaný kód. Přejmenujte stránku na
.php. - Dvakrát začátek stránky. Hlídejte, ať je
<!DOCTYPE>a<body>jen v hlavičce a konec jen v patičce – ne znovu i na stránce samotné.
Nechcete web řešit sami a chcete ho mít hotový a profesionální?
Podívejte se na tvorbu webů →© Ondřej Šteigl. Autorem návodů jsem já. Obsah je autorským dílem chráněným podle zákona č. 121/2000 Sb. (autorský zákon). Kopírování, přebírání nebo šíření bez mého předchozího písemného souhlasu je zakázáno. Výukové použití je vítáno – stačí uvést zdroj (osteigl.cz).