[[oktatas:programozás:php:php fejlesztés|< PHP fejlesztés]] ====== PHP fejlesztés -- Mini projekt ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2020 * [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: http://szit.hu ===== Bevezetés ===== Olyan projektekre kell gondolnunk, amelyek egy webhelynek nem a főoldalát alkotják, hanem valamilyen alkönyvtárban egy kisebb program, ami lehet például egy regisztrációs felület egy eseményre. ===== Projekt szervezés ===== Legyen egy webhely, amely zold.lan címen érhető el. Ennek egy pr01 nevű alkönyvtárában szeretnénk egy regisztrációs felületet. A weboldal így lesz elérhető: http://zold.lan/pr01/ A következő könyvtárszerkezetet tervezzük: projekt01 |-.git/ |-database/ |-draft/ |-pr01/ | |-css/ | |-js/ | |-includes/ | |-libs/ | |-templates/ | |-views/ | `-index.php | |-.gitignore |-changelog.txt `-readme.txt mkdir projekt01 cd projekt01 mkdir pr01 php -S localhost:8000 -t . A böngészőben viszont ezt írjuk: localhost:8000/pr01 ===== Git tároló ===== A tárolót a projekt01 könyvtárban hozzuk létre. git init A felöltéshez a git verziókövetőt fogjuk használni, SSH protokollon keresztül. Ezért állítsuk be a távoli szervert. ==== Hozzáférés a szerverhez ==== Host webhost Hostname zold.lan User git IdentityFile ~/.ssh/webhost_rsa IdentitiesOnly yes A .gitignore fájlban írjuk fel azokat a könyvtárakat és fájlokat, amelyeket nem szeretnénk verzió követni. ===== Routing ===== A routinghoz szükség van egy .htaccess fájlra: RewriteEngine On RewriteBase /projekt01/ RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.+)$ /projekt01/index.php [QSA,L] A .htaccess fájl Apache webszerveren bármilyen kérést átirányít a /projekt01/index.php állományra. Hozzuk létre a routing fájlt: ===== Kiinduló oldal ===== A kiinduló oldalt a home.php szolgáltatja. De valójában csak három PHP kódot tartalmaz. A tényleges HTML kódok a következő fájlokban találhatók: * head.tpl * home.tpl * foot.tpl A head.tpl és a foot.tpl állományokat a többi weboldalhoz is felhasználjuk. Így minden weblapnak egységes fej és lábrésze lesz. A CSS és JavaScript fájlokra így hivatkozzunk: /pr01/css/style.css /pr01/js/script.js ===== Template ===== A template oldal beemelése PHP scriptből: Tartalom cseréje a template fájlban: