ΠΊΠ°ΠΊ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΡΡΡΡΠΊΡΡΡΠ° mvc ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
MVC Π΄Π»Ρ Π²Π΅Π±: ΠΏΡΠΎΡΠ΅ Π½Π΅ΠΊΡΠ΄Π°
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΡΠΉ ΠΏΠ°ΡΡΠ΅ΡΠ½ MVC (Model, View, Controller) Π² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ Π²Π΅Π±-ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅, Β«Π² ΡΠΈΡΡΠΎΠΌ Π²ΠΈΠ΄Π΅Β», Π±Π΅Π· ΠΏΡΠΈΠ²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ -ΡΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ , Π½Π΅ ΠΎΡΠ½ΠΎΡΡΡΠΈΡ ΡΡ ΠΊ MVC ΡΡΡΡΠΊΡΡΡ ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½ΠΎΠ². ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΡΠΎΠ΄Π²ΠΈΠ³Π°ΡΡΡΡ ΠΎΡ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΠΊ ΡΠ»ΠΎΠΆΠ½ΠΎΠΌΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΡΠ°Π½Π΅ΠΌ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ MVC β ΠΏΠ°ΡΡΠ΅ΡΠ½ HMVC (Hierarchical MVC). Π₯ΠΎΡΡ HMVC, Π½Π΅ΡΠΎΠΌΠ½Π΅Π½Π½ΠΎ, Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ΅Π½ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΡΠΌΠ΅Π½ΡΠ΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ Β«ΠΎΠ±ΡΡΠ½ΠΎΠ³ΠΎΒ» MVC.
Π‘ΡΠ°ΡΡΡ Π² ΠΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ (Π° ΠΈΠΌΠ΅Π½Π½ΠΎ ΡΡΠ΄Π°, Π²ΠΈΠ΄ΠΈΠΌΠΎ, ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠΏΠ°Π΄Π°ΡΡ ΡΠ΅, ΠΊΡΠΎ ΡΠΎΠ»ΡΠΊΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΈΠ·ΡΡΠ°ΡΡ MVC), ΠΈΠ·ΠΎΠ±ΠΈΠ»ΡΠ΅Ρ Π½Π΅ΡΠΎΡΠ½ΠΎΡΡΡΠΌΠΈ ΠΈ ΡΡΠΌΠ°Π½Π½ΡΠΌΠΈ ΡΠΎΡΠΌΡΠ»ΠΈΡΠΎΠ²ΠΊΠ°ΠΌΠΈ, ΡΠ°ΠΌΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, ΠΏΠΎ ΡΡΡΠΈ, ΡΠ²Π»ΡΠ΅ΡΡΡ Π½Π΅Π²Π΅ΡΠ½ΡΠΌ, Π° ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΏΡΠΎΡΡΠΎ Π½Π°ΠΏΡΠΎΡΡΠΎ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΡΠΎΠΉ, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΡΡΡ Π² Π²Π΅Π± Π²ΠΎΠΎΠ±ΡΠ΅ ΠΈ ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ Π½Π° PHP β Π² ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ.
ΠΠ°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ½Π° MVC Ρ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ» ΡΡΡ:
Π¨Π°Π±Π»ΠΎΠ½ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ MVC ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΈ ΡΠΏΡΠ°Π²Π»ΡΡΡΠ΅ΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ Π½Π° ΡΡΠΈ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°: ΠΠΎΠ΄Π΅Π»Ρ, ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ β ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΠΎ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ.
Π£ΡΠΎΡΠ½ΠΈΠΌ, ΡΡΠΎ ΡΠ΅ΡΠΌΠΈΠ½ Β«ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΒ» Π² Π΄Π°Π½Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΡΠ²ΡΠ·ΠΈ Ρ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ
CMS ΠΈΠ»ΠΈ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΠΈΡΡΠΈΠΊΡΠ°, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²ΠΎΠΎΠ±ΡΠ΅ ΡΡΡΠΎΡΡΡΡ ΠΈΠ· Π²ΡΠ΅Ρ
ΡΡΡΡ
ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ
MVC.
Π ΠΏΡΠΈΠ²Π΅Π΄ΡΠ½Π½ΠΎΠΌ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΠΏΠΎΠ΄ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΌ ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ Π½Π΅ΠΊΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΡ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΆΠ΄Π°Ρ ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
ΠΈΠ³ΡΠ°Π΅Ρ ΠΎΠ΄Π½Ρ ΠΈΠ· ΡΠΎΠ»Π΅ΠΉ ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°, ΠΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π³Π΄Π΅ ΠΠΎΠ΄Π΅Π»Ρ ΡΠ»ΡΠΆΠΈΡ Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΠΈ ΠΌΠ°Π½ΠΈΠΏΡΠ»ΡΡΠΈΠΉ Π΄Π°Π½Π½ΡΠΌΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° Π²ΠΈΠ΄ΠΈΠΌΠΎΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΡΡΠΈΡ
Π΄Π°Π½Π½ΡΡ
(ΡΠΎ Π΅ΡΡΡ, Π² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ Π²Π΅Π±Ρ, ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΠΎΡΠ΄Π°Π²Π°Π΅ΠΌΡΠΉ ΡΠ΅ΡΠ²Π΅ΡΠΎΠΌ Π±ΡΠ°ΡΠ·Π΅ΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ HTML/CSS), Π° ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠΏΡΠ°Π²Π»ΡΠ΅Ρ Π²ΡΠ΅ΠΌ ΡΡΠΈΠΌ ΠΎΡΠΊΠ΅ΡΡΡΠΎΠΌ.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΡΡ ΡΡ Π΅ΠΌΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ:
Π ΠΈΡΡΠ½ΠΎΠΊ 1
ΠΠ° ΡΡΠΎΠΌ ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌ ΡΠΈΡΡΠ½ΠΊΠ°Ρ
ΠΏΡΠ½ΠΊΡΠΈΡΠ½ΡΠΌΠΈ Π»ΠΈΠ½ΠΈΡΠΌΠΈ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° ΡΠΏΡΠ°Π²Π»ΡΡΡΠ°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ (ΡΠ°ΠΊΠ°Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΊΠ°ΠΊ ID Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Π·Π°ΠΏΠΈΡΠΈ Π±Π»ΠΎΠ³Π° ΠΈΠ»ΠΈ ΡΠΎΠ²Π°ΡΠ° Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅), Π° ΡΠΏΠ»ΠΎΡΠ½ΡΠΌΠΈ β ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ (ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Ρ
ΡΠ°Π½ΠΈΡΡΡΡ Π² ΠΠ, ΠΈΠ»ΠΈ Π² Π²ΠΈΠ΄Π΅ ΡΠ°ΠΉΠ»ΠΎΠ² Π½Π° Π΄ΠΈΡΠΊΠ΅, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΠΏΠ°ΠΌΡΡΠΈ β ΡΡΠΎΡ Π²ΠΎΠΏΡΠΎΡ Π»Π΅ΠΆΠΈΡ Π·Π° ΠΏΡΠ΅Π΄Π΅Π»Π°ΠΌΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Π° MVC). Π ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠΈ ΠΊ Π²Π΅Π±Ρ Π·Π°ΠΏΡΠΎΡ ΠΈ ΠΎΡΠ²Π΅Ρ Ρ
ΠΎΠ΄ΡΡ ΠΏΠΎ HTTP, ΠΏΠΎΡΡΠΎΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ»ΠΎΠ²Π½ΠΎ ΡΡΠΈΡΠ°ΡΡ, ΡΡΠΎ Π½Π° ΡΡΠΎΠΌ ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΏΡΠ½ΠΊΡΠΈΡΠΎΠΌ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP-Π·Π°ΠΏΡΠΎΡΠ° ΠΈ ΠΎΡΠ²Π΅ΡΠ°, Π° ΡΠΏΠ»ΠΎΡΠ½ΡΠΌΠΈ Π»ΠΈΠ½ΠΈΡΠΌΠΈ β ΠΈΡ
ΡΠ΅Π»Π°.
ΠΠΎΠ»ΡΡΠΈΠ² ΠΠ°ΠΏΡΠΎΡ 1, ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π΅Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡΡΠ΅Ρ, ΠΈ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠ΄Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ ΠΎΡΠ²Π΅ΡΠ° (ΠΏΠΎΡΠ΅ΠΌΡ ΠΎΡΠ²Π΅Ρ ΠΈΠΌΠ΅Π΅Ρ Π½ΠΎΠΌΠ΅Ρ 4, ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ ΡΠΈΡΡΠ½ΠΊΠΎΠ²):
1. Π‘ΡΠ°Π·Ρ Π²ΡΠ΄Π°ΡΡ ΠΎΡΠ²Π΅Ρ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π·Π°ΠΏΡΠΎΡΠ΅ Π½Π΅ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅ΠΉ ΡΡΡΠ°Π½ΠΈΡΡ ΠΎΡΠ΄Π°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Β«404 Not foundΒ»)
2. ΠΡΠ»ΠΈ ΠΏΠΎΡΡΡΠΏΠΈΠ²ΡΠΈΠΉ ΠΠ°ΠΏΡΠΎΡ 1 ΠΏΡΠΈΠ·Π½Π°Π½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΌ, ΡΠΎ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΡΠΎΠ³ΠΎ, ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΠ½ Π·Π°ΠΏΡΠΎΡΠΎΠΌ Π½Π° ΠΏΡΠΎΡΠΌΠΎΡΡ ΠΈΠ»ΠΈ Π½Π° ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π΄Π°Π½Π½ΡΡ , ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΠΎΠ΄Π΅Π»ΠΈ, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Save ΠΈΠ»ΠΈ Load (ΠΠ°ΠΏΡΠΎΡ 2 Π½Π° Π ΠΈΡ.2).
Π ΠΈΡΡΠ½ΠΎΠΊ 2
ΠΠ°ΠΆΠ½ΠΎΠ΅ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΡ MVC Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡ-ΡΠΎ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΌΡ ΡΠ·ΡΠΊΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΠΎΠ½Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π΅ ΠΏΡΠΈΠ²ΡΠ·Π°Π½Π° ΠΈ ΠΊ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ ΠΏΠ°ΡΠ°Π΄ΠΈΠ³ΠΌΠ΅ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π’ΠΎ Π΅ΡΡΡ, Π²Ρ Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ²ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ MVC, ΠΏΡΠΈ ΡΡΠΎΠΌ Π½Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡ ΠΠΠ, ΠΈ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°ΡΡ ΠΠΎΠ΄Π΅Π»Ρ Π’ΠΎΠ²Π°Ρ Π΄Π»Ρ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΡΠ°ΠΊ, Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΡ ΠΠΎΠ΄Π΅Π»ΠΈ ΠΡΠ²Π΅ΡΠ° 2 ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΠ΅ΡΠ°Π΅Ρ, ΠΊΠ°ΠΊΠΎΠ΅ ΠΈΠ· ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ Π²ΡΠ·Π²Π°ΡΡ Π΄Π»Ρ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΎΠ³ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΡΠ²Π΅ΡΠ° Π½Π° ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΠ°ΠΏΡΠΎΡ 1:
3.1. Π ΡΠ»ΡΡΠ°Π΅ Π½Π΅ΡΠ΄Π°ΡΠΈ β ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅
3.2. Π ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅Ρ
Π° β ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅ΠΌΡΡ
Π΄Π°Π½Π½ΡΡ
Π»ΠΈΠ±ΠΎ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ ΠΎΠ± ΠΈΡ
ΡΡΠΏΠ΅ΡΠ½ΠΎΠΌ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΠΈ (Π΅ΡΠ»ΠΈ ΠΠ°ΠΏΡΠΎΡ 1 Π±ΡΠ» Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½ΡΡ
).
Π ΠΈΡΡΠ½ΠΎΠΊ 3
ΠΠΎΠΏΡΠΎΡ ΠΎ ΡΠΎΠΌ, ΠΊΡΠΎ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠΎΠ²Π΅ΡΡΡΡ Π½Π° Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΡ ΠΈ ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° Π²Ρ
ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ (ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΈΠ»ΠΈ ΠΠΎΠ΄Π΅Π»Ρ), ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΡΠ΅Π΄ΠΌΠ΅ΡΠΎΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΡΠΈΡΠ»Π΅Π½Π½ΡΡ
ΡΠΏΠΎΡΠΎΠ², ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ°ΡΡΠ΅ΡΠ½ MVC Π½Π΅ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠ°ΠΊΠΈΡ
Π΄Π΅ΡΠ°Π»Π΅ΠΉ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π² ΡΡΠΎΠΌ Π²ΠΎΠΏΡΠΎΡΠ΅ Π²ΡΠ±ΠΎΡ Π·Π° Π²Π°ΠΌΠΈ (ΠΈΠ»ΠΈ Π·Π° Π²Π°Ρ Π΅Π³ΠΎ ΡΠ΄Π΅Π»Π°Π»ΠΈ Π°Π²ΡΠΎΡΡ Π²Π°ΡΠ΅Π³ΠΎ Π»ΡΠ±ΠΈΠΌΠΎΠ³ΠΎ ΡΡΠ΅ΠΉvΠ²ΠΎΡΠΊΠ° ΠΈΠ»ΠΈ CMS).
ΠΡ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΏΡΠΈΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠ°ΠΊΠΎΠ³ΠΎ ΠΏΠΎΠ΄Ρ
ΠΎΠ΄Π°:
ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ Π²Ρ
ΠΎΠ΄Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π½Π° ΠΏΡΠ΅Π΄ΠΌΠ΅Ρ Β«ΠΎΠ±ΡΠ΅ΠΉΒ» (Ρ.Π΅. Π½Π΅Π·Π°Π²ΠΈΡΡΡΠ΅ΠΉ ΠΎΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°ΠΏΡΠΎΡΠ°) ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΡΡΠΈ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠ΅ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡΠΌ ΠΠΎΠ΄Π΅Π»ΠΈ ΠΊ Π²Π°Π»ΠΈΠ΄Π½ΠΎΡΡΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΠΌΡΡ
Π΄Π°Π½Π½ΡΡ
ΠΏΡΠΎΠ²Π΅ΡΡΠ΅Ρ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ ΠΠΎΠ΄Π΅Π»ΠΈ, Π° ΠΏΡΠ°Π²Π° Π΄ΠΎΡΡΡΠΏΠ° β ΠΌΠ΅ΡΠΎΠ΄ Access ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° User.
ΠΠ»Ρ Π²ΡΠ·ΠΎΠ²Π° ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ Π² PHP ΠΈΠ½ΠΎΠ³Π΄Π° ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΡΠ΅ΡΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ (Π° ΡΠΎ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΊΠ»Π°ΡΡΠΎΠ²), Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, View (ΡΡΠΎ ΡΠ°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΎΠΏΠΈΡΠ°Π½ΠΈΡΡ
MVC Π² ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΡΠΎΠ³ΠΎ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠ³ΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°), ΠΎΠ΄Π½Π°ΠΊΠΎ ΡΡΠΎ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ MVC.
Π’Π°ΠΊΠΆΠ΅ ΡΠ°ΠΉΠ»Ρ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΉ ΡΠ°ΡΡΠΎ Π½Π°Π·ΡΠ²Π°ΡΡ ΡΠ°Π±Π»ΠΎΠ½Π°ΠΌΠΈ, Π° ΠΏΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΡΡ
ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡΠΎΠ² ΡΠΎΠ»Ρ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ³ΡΠ°Π΅Ρ ΡΠ°ΠΌ ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡ, Π° ΡΠ°Π±Π»ΠΎΠ½Ρ (Ρ.Π΅. ΡΠ°ΠΉΠ»Ρ, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠ΅ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ HTML-ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ) Π² Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°Ρ
Π½Π°Π·ΡΠ²Π°ΡΡ layouts.
ΠΠ΅ Π²ΠΏΠΎΠ»Π½Π΅ ΠΏΠΎΠ½ΡΡΠ΅Π½ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΠΉ Π°Π±Π·Π°Ρ? ΠΠ°Π±Π΅ΠΉΡΠ΅, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½Π°Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ β ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ PHP-ΡΠ°ΠΉΠ», Π° ΡΠ°ΠΌ PHP ΡΡΡΡΠΎΠ΅Π½ ΡΠ°ΠΊ, ΡΡΠΎ Π² ΡΠ»ΡΡΠ°Π΅, Π΅ΡΠ»ΠΈ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΠ°ΠΏΡΠΎΡΠ° 3 ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ include, ΠΡΠ²Π΅Ρ 3 ΠΈ ΠΡΠ²Π΅Ρ 4 (ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΡΡΠΎ ΡΡΠΎ ΠΎΡΠ²Π΅Ρ Π½Π° ΠΠ°ΠΏΡΠΎΡ 1?) ΠΎΡΠ΄Π°ΡΡΡΡ Π±ΡΠ°ΡΠ·Π΅ΡΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ, ΡΡΠ΅Π΄ΡΡΠ²Π°ΠΌΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ PHP.
ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΡΠΈΠΌΠ΅Ρ.
Π£ Π½Π°Ρ Π΅ΡΡΡ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ (ΡΠ°Π±Π»ΠΎΠ½Ρ), Π² ΠΊΠΎΡΠΎΡΡΡ
Π±ΡΠ΄Π΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ HTML-ΠΊΠΎΠ΄, ΠΏΡΠ΅Π΄Π²ΠΎΡΡΡΡΠΈΠΉ Π² ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌΠΎΠΌ Π²Π΅Π±-Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ΅ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ (Ρ.Π΅. ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΡΠ΅Π³ doctype, ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅Ρ head, ΠΊΠΎΠ΄ ΡΠ°ΠΏΠΊΠΈ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΈ Ρ.ΠΏ.), Π° β ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠΎ ΠΆΠ΅, ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄Π²Π°Π»Π° ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΠΈΡΡΠΈΠ½Π³ 1. Π¨Π°Π±Π»ΠΎΠ½ product.tpl.php ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΎ Π’ΠΎΠ²Π°ΡΠ΅ (ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π΅Π³ΠΎ Π²ΡΠ·ΠΎΠ²Π° ΡΠΆΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ ΠΎΠ±ΡΠ΅ΠΊΡ $product):
ΠΠΈΡΡΠΈΠ½Π³ 2. Π¨Π°Π±Π»ΠΎΠ½ error.tpl.php ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΎΠ± ΠΎΡΠΈΠ±ΠΊΠ΅ (ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $error):
ΠΠΈΡΡΠΈΠ½Π³ 3. ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ product.php, ΡΠ»ΡΠΆΠ°ΡΠΈΠΉ Π΄Π»Ρ ΠΎΡΠΎΠ±ΠΎΠ°ΠΆΠ΅Π½ΠΈΡ Π’ΠΎΠ²Π°ΡΠ°, Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΠΏΡΠΈΠΌΠ΅ΡΠ½ΠΎ ΡΠ°ΠΊ:
Π’Π΅, ΠΊΡΠΎ Π»ΡΠ±ΠΈΡ ΠΊΡΠ°ΡΠΈΠ²ΡΠΉ ΠΈ ΠΎΠΏΡΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠΎΠ΄ ΠΌΠΎΠ³ΡΡ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π±Π»ΠΎΠΊΠΈ HTML.header ΠΈ HTML.footer Π΄ΡΠ±Π»ΠΈΡΡΡΡΡΡ Π² ΠΎΠ±ΠΎΠΈΡ ΡΠ°Π±Π»ΠΎΠ½Π°Ρ (ΠΎΠ½ΠΈ ΠΆΠ΅ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΡ) error.tpl.php ΠΈ product.tpl.php, ΠΈ Π½Π°Π²Π΅ΡΠ½ΡΠΊΠ° Π·Π°Ρ ΠΎΡΡΡ Π²ΡΠ½Π΅ΡΡΠΈ ΠΈΡ Π² ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ product.save.php:
β¦. ΠΈ Π½Π°ΡΡΡΠΈΡΡ ΡΠ°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ MVC β ΡΠ°Π·Π΄Π΅Π»ΡΠΉΡΠ΅ ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, ΠΠΎΠ΄Π΅Π»Ρ ΠΈ ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅.
Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Π΄ΡΠ±Π»ΠΈΡΡΡΡΠΈΠΉΡΡ ΠΊΠΎΠ΄ β ΠΎΠ΄Π½ΠΎΠ·Π½Π°ΡΠ½ΠΎΠ΅ ΠΠ»ΠΎ. Π§ΡΠΎ ΠΆΠ΅ Π΄Π΅Π»Π°ΡΡ?
ΠΡ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΎΡ MVC ΠΊ HMVC!
ΠΠΎ ΡΡΠΎ β ΡΠ΅ΠΌΠ° ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ.
ΠΡΠΎΡΡΡΠ΅ MVC-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ
Π’Π΅ΠΎΡΠΈΡ
ΠΡΠ»ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΎ, ΡΠΎ MVC (model view controller) ΡΡΠΎ ΡΠ°ΠΊΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ ΠΎΡΠ²Π΅ΡΠ°ΡΡΠΈΠΉ Π·Π° Π²ΡΠ²ΠΎΠ΄ Π΄Π°Π½Π½ΡΡ , ΠΏΠΈΡΠ΅ΡΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, Π° ΠΊΠΎΠ΄ ΠΊΠΎΡΠΎΡΡΠΉ ΡΡΠΈ Π΄Π°Π½Π½ΡΠ΅ ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ, ΠΏΠΈΡΠ΅ΡΡΡ Π² Π΄ΡΡΠ³ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅. Π ΠΈΡΠΎΠ³Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊ, ΡΡΠΎ Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½Π°Π΄ΠΎ ΠΏΠΎΠ΄ΠΏΡΠ°Π²ΠΈΡΡ Π²ΡΠ²ΠΎΠ΄ Π²Ρ ΡΡΠ°Π·Ρ Π·Π½Π°Π΅ΡΠ΅ Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΌΠ΅ΡΡΠ΅ ΠΈΡΠΊΠ°ΡΡ. Π‘Π΅ΠΉΡΠ°Ρ Π²ΡΠ΅ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΡΠ°ΠΊΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ.
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ ΡΠΎΡ ΡΠ°ΠΊΡ, ΡΡΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° Π»Π°Π³Π΅ΡΡ: ΠΎΠ΄ΠΈΠ½ ΠΏΠΈΡΠ΅Ρ Π»ΠΎΠ³ΠΈΠΊΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ , Π²ΡΠΎΡΠΎΠΉ Π² ΠΌΠΎΠ΄Π΅Π»ΡΡ . Π ΡΠ΅Ρ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π½Π°Ρ Ρ (yii, laravel) Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ , Π° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠ²Π»ΡΡΡΡΡ ΠΏΡΠΎΡΡΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ°ΠΌΠΈ ORM. Π£ yii ΠΊΡΡΠ°ΡΠΈ Π² ΠΌΠ°Π½ΡΠ°Π»Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ, ΡΡΠΎ ΠΏΠΈΡΠ°ΡΡ Π»ΠΎΠ³ΠΈΠΊΡ Π½Π°Π΄ΠΎ Π² ΠΌΠΎΠ΄Π΅Π»ΡΡ , Π° ΠΏΠΎΡΠΎΠΌ ΠΎΠ½ΠΈ ΡΠ°ΠΌΠΈ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ ΠΏΠΈΡΡΡ Π΅Ρ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ , Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ Π·Π°Π±Π°Π²Π½ΠΎ.
Π‘ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΠ»ΠΈΡΡ, ΠΏΠΈΡΠ΅ΠΌ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°Ρ . Π’Π°ΠΊΠΆΠ΅ Π² ΠΌΠ΅ΡΠΎΠ΄Π°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²ΡΠ·ΠΎΠ² ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π°Ρ ΠΏΠΎ ΡΡΡΠΈ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΡ ORM, ΡΡΠΎΠ±Ρ Ρ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· Π±Π°Π·Ρ Π½Π°Π΄ ΠΊΠΎΡΠΎΡΡΠΌΠΈ Π±ΡΠ΄ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ. ΠΠΎΠ½Π΅ΡΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π² Π²ΠΈΠ΄Ρ. ΠΠΈΠ΄Ρ cΠΎΠ΄Π΅ΡΠΆΠ°Ρ HTML-ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ PHP-ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΎΠ±Ρ ΠΎΠ΄Π°, ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ .
ΠΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ, ΡΡΠΎ Π΅ΡΡΡ Π΄Π²Π° Π²ΠΈΠ΄Π° MVC Page Controller ΠΈ Front Controller. Page Controller’ΠΎΠΌ ΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΠ΅Π΄ΠΊΠΎ, Π΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ Π·Π°ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΠ΅ΠΊ Π²Ρ ΠΎΠ΄Π° (Π·Π°ΠΏΡΠΎΡΡ ΠΊ ΡΠ°ΠΉΡΡ ΠΎΡΡΡΠ΅ΡΡΠ²Π»ΡΡΡΡΡ ΠΊ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ), ΠΈ Π²Π½ΡΡΡΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΎΡΠΊΠΈ Π²Ρ ΠΎΠ΄Π° ΡΠ²ΠΎΠΉ ΠΊΠΎΠ΄ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΏΠΈΡΠ°ΡΡ Front Controller Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ Π²Ρ ΠΎΠ΄Π°.
ΠΡΠ°ΠΊΡΠΈΠΊΠ°
ΠΠ°Π»ΡΡΠ΅ Π² ΠΏΠ°ΠΏΠΊΠ΅ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ° ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΏΠ°ΠΏΠΊΡ, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π·Π²Π°ΡΡ App Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ. Π Π½Π΅ΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅.
ΠΠ°Ρ Service Locator. Π€Π°ΠΉΠ» App.php
Π‘Π΅ΡΠ²ΠΈΡ Π»ΠΎΠΊΠ°ΡΠΎΡ Π½ΡΠΆΠ΅Π½ ΡΡΠΎΠ±Ρ Ρ ΡΠ°Π½ΠΈΡΡ Π² Π½ΡΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π½Π°ΡΠ΅Π³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ Ρ Π½Π°Ρ ΠΏΡΠΎΡΡΠΎΠ΅ mvc ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎ ΠΌΡ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΏΠ°ΡΡΠ΅ΡΠ½ registry (ΠΊΠ°ΠΊ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π² yii ΡΠ΄Π΅Π»Π°Π½ΠΎ). Π ΠΏΡΠΎΡΡΠΎ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ²ΠΎΠΉΡΡΠ²Π°, ΡΡΠΎΠ±Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π½ΠΈΠΌ Π±ΡΠ»ΠΎ ΠΏΡΠΎΡΠ΅. ΠΡΡ App ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅Ρ Π°Π²ΡΠΎΠ·Π°Π³ΡΡΠ·ΡΠΈΠΊ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ.
Π ΠΎΡΡΠ΅Ρ. Π€Π°ΠΉΠ» Router.php
Π€Π°ΠΉΠ» Db.php
ΠΡΠΎΡ ΠΊΠ»Π°ΡΡ ΡΠ·Π°Π΅Ρ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠΈΠ³Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΌΠ°ΡΡΠΈΠ² ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ
Π€Π°ΠΉΠ» Config/Db.php
ΠΠ°ΡΠ΅ ΡΠ΄ΡΠΎ. Π€Π°ΠΉΠ» Kernel.php
Π―Π΄ΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΡΠΎΡΡΠ΅ΡΡ, Π° ΠΏΠΎΡΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°. ΠΡΡ ΡΠ΄ΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΊΠΈΠ½ΡΡΡ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅, Π΅ΡΠ»ΠΈ Π½Π΅Ρ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°.
Π€Π°ΠΉΠ» Controller.php
ΠΡΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠΉ ΠΊΠ»Π°ΡΡ Π΄Π»Ρ Π½Π°ΡΠΈΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ², ΡΡΠΎΠ±Ρ ΠΏΠΎΡΠΎΠΌ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡΡΡ ΠΎΡ Π½Π΅Π³ΠΎ. ΠΠ°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ Π½ΡΠΆΠ½ΠΎ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π²Ρ ΠΌΠΎΠ³Π»ΠΈ ΡΠ΅Π½Π΄Π΅ΡΠΈΡΡ (ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°ΡΡ Π²ΡΠ²ΠΎΠ΄) Π²ΠΈΠ΄Ρ. ΠΠ΅ΡΠΎΠ΄Ρ ΡΠ΅Π½Π΄Π΅ΡΠΈΠ½Π³Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π»ΡΠΉΠ°ΡΡΠΎΠ² β ΡΠ°Π±Π»ΠΎΠ½ΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΠΎΠ±ΡΠΈΠ΅ Π΄Π»Ρ Π²ΡΠ΅Ρ Π²ΠΈΠ΄ΠΎΠ² ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΡΠ΅Ρ ΠΈ Ρ ΡΠ΄Π΅Ρ.
Π€Π°ΠΉΠ» index.php
ΠΠ΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ ΡΠΎΠ·Π΄Π°ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» Π² ΠΊΠΎΡΠ½Π΅:
Π‘ΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΈ Π²ΠΈΠ΄Ρ
Π Π°Π±ΠΎΡΠ° Ρ Π½Π°ΡΠΈΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΡΠΊΠ°Π·Π°ΡΡ ΠΌΠΈΠ½ΠΈΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠΌ) ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΊ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ Π²ΠΈΠ΄ΠΎΠ² ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ². ΠΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ (Π² ΠΏΠ°ΠΏΠΊΠ΅ Controllers):
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ MVC ΠΏΠ°ΡΡΠ΅ΡΠ½Π° Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ°ΠΉΡΠ°-Π²ΠΈΠ·ΠΈΡΠΊΠΈ Π½Π° PHP
ΠΠ°ΠΊ Π²Ρ ΡΠΆΠ΅ Π΄ΠΎΠ³Π°Π΄Π°Π»ΠΈΡΡ ΠΈΠ· Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠ°ΡΡΠΈ, ΡΠ΅Π³ΠΎΠ΄Π½Ρ ΡΠ΅ΡΡ ΠΏΠΎΠΉΠ΄Π΅Ρ ΠΎ ΡΠ°ΠΌΠΎΠΌ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΎΠΌ, ΡΠ°Π·Π²Π΅ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅ Singleton, ΡΠ°Π±Π»ΠΎΠ½Π΅ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ MVC, Ρ ΠΎΡΡ ΡΠ°ΠΊΠΎΠ΅ ΡΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΎΠ²ΡΠ΅ΠΌ ΡΠΌΠ΅ΡΡΠ½ΠΎ. ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ MVC ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠΌΠΎΡΡ Π²Π°ΠΌ Π² ΡΠ΅ΡΠ°ΠΊΡΠΎΡΠΈΠ½Π³Π΅ ΠΈ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π½Π΅ΠΏΡΠΈΡΡΠ½ΡΡ ΡΠΈΡΡΠ°ΡΠΈΠΉ Π² ΠΊΠΎΡΠΎΡΡΠ΅, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΠ°Π» Π²Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡ. ΠΠ°Π±Ρ Π²ΠΎΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠ±Π΅Π», ΠΌΡ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΠΌ ΡΠ°Π±Π»ΠΎΠ½ MVC Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΏΡΠΎΡΡΠΎΠ³ΠΎ ΡΠ°ΠΉΡΠ°-Π²ΠΈΠ·ΠΈΡΠΊΠΈ.
ΠΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅
ΠΠ²Π΅Π΄Π΅Π½ΠΈΠ΅
ΠΠ½ΠΎΠ³ΠΈΠ΅ Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΏΠΈΡΠ°ΡΡ ΠΏΡΠΎΠ΅ΠΊΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠΉ Π·Π°Π΄Π°ΡΠ΅ΠΉ, Π½Π΅ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Ρ, ΡΡΠΎ ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΡΠ°ΡΡΠΈ Π² ΠΌΠ½ΠΎΠ³ΠΎΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΡΡ ΡΠΈΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ, Π½Ρ Π΄ΠΎΠΏΡΡΡΠΈΠΌ, ΠΊΠΎΠ½ΡΠ΅Π½ΡΠΎΠΌ ΠΈΠ»ΠΈ ΡΠΏΠ°ΡΠΈ Π±ΠΎΠ³, ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΡΡΠ²ΠΎΠΌ. Π Π²ΡΡ Π²ΡΠΎΠ΄Π΅ Π·Π΄ΠΎΡΠΎΠ²ΠΎ ΠΈ ΠΊΠ»Π°ΡΡΠ½ΠΎ, Π²ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ, ΠΏΠΎΠΊΠ° Π½Π΅ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ, ΡΡΠΎ ΡΠΎΡ ΠΊΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΏΠΈΡΠ°Π½ β ΡΠΎΡΡΠΎΠΈΡ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ ΠΈ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΠΈΠ· ΠΊΠΎΡΡΡΠ»Π΅ΠΉ ΠΈ Ρ Π°ΡΠ΄ΠΊΠΎΠ΄Π°. ΠΠΎΠ΄ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠ°Π½Π½ΡΠΉ Ρ Π²Π΅ΡΡΡΠΊΠΎΠΉ, Π·Π°ΠΏΡΠΎΡΠ°ΠΌΠΈ ΠΈ ΠΊΠΎΡΡΡΠ»ΡΠΌΠΈ, Π½Π΅ΠΏΠΎΠ΄Π΄Π°ΡΡΠΈΠΉΡΡ ΠΈΠ½ΠΎΠ³Π΄Π° Π΄Π°ΠΆΠ΅ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ. ΠΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ Π½Π°ΡΡΡΠ½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ°: ΠΏΡΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π½ΠΎΠ²ΡΡ ΡΠΈΡ, ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ Ρ ΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ ΠΎΡΠ΅Π½Ρ Π΄ΠΎΠ»Π³ΠΎ ΠΈ Π΄ΠΎΠ»Π³ΠΎ Π²ΠΎΠ·ΠΈΡΡΡΡ, Π²ΡΠΏΠΎΠΌΠΈΠ½Π°Ρ Β«Π° ΡΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌ ΡΠ°ΠΊΠΎΠ΅ Π½Π°ΠΏΠΈΡΠ°Π½ΠΎ ΡΠΎ Π±ΡΠ»ΠΎ?Β» ΠΈ ΠΏΡΠΎΠΊΠ»ΠΈΠ½Π°ΡΡ ΡΠ΅Π±Ρ Π² ΠΏΡΠΎΡΠ»ΠΎΠΌ.
ΠΡ ΠΌΠΎΠΆΠ΅ΡΡ Π±ΡΡΡ Π΄Π°ΠΆΠ΅ ΡΠ»ΡΡΠ°Π»ΠΈ ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ Π΄Π°ΠΆΠ΅ Π»ΠΈΡΡΠ°Π»ΠΈ ΡΡΠΈ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ½ΡΠ΅ ΠΊΠ½ΠΈΠ³ΠΈ:
ΠΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½Π½Π°Ρ ΡΡΠ°ΡΡΡ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ»Π΅Π·Π½Π° Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π½ΠΎΠ²ΠΈΡΠΊΠ°ΠΌ. ΠΠΎ Π²ΡΡΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅, Ρ Π½Π°Π΄Π΅ΡΡΡ ΡΡΠΎ Π·Π° ΠΏΠ°ΡΡ ΡΠ°ΡΠΎΠ² Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ MVC ΠΏΠ°ΡΡΠ΅ΡΠ½Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π»Π΅ΠΆΠΈΡ Π² ΠΎΡΠ½ΠΎΠ²Π΅ Π²ΡΠ΅Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ Β«ΠΏΠΈΡΡΒ» Π΄Π»Ρ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΠΈΡ ΡΠ°Π·ΠΌΡΡΠ»Π΅Π½ΠΈΠΉ Π½Π°Π΄ ΡΠ΅ΠΌ β Β«ΠΊΠ°ΠΊ ΡΡΠΎΠΈΡ Π΄Π΅Π»Π°ΡΡΒ». Π ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΡΡΠ»ΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠΎΠΌΠΎΠ³ΡΡ ΡΠ°Π·ΠΎΠ±ΡΠ°ΡΡΡΡ ΠΈΠ· ΡΠ΅Π³ΠΎ ΡΠΎΡΡΠΎΡΡ Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ (ΠΏΠΎΠΌΠΈΠΌΠΎ MVC) ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ.
ΠΡΠΎΠΆΠΆΠ΅Π½Π½ΡΠ΅ PHP-ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΡΡ Π²ΡΡΠ΄ Π»ΠΈ Π½Π°ΠΉΠ΄ΡΡ Π² Π΄Π°Π½Π½ΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΡΡΠΎ-ΡΠΎ Π½ΠΎΠ²ΠΎΠ΅ Π΄Π»Ρ ΡΠ΅Π±Ρ, Π½ΠΎ ΠΈΡ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΡ ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΊ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌΡ ΡΠ΅ΠΊΡΡΡ Π±ΡΠ»ΠΈ Π±Ρ ΠΎΡΠ΅Π½Ρ ΠΊΡΡΠ°ΡΠΈ! Π’.ΠΊ. Π±Π΅Π· ΡΠ΅ΠΎΡΠΈΠΈ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ° Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π°, Π° Π±Π΅Π· ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ ΡΠ΅ΠΎΡΠΈΡ Π±Π΅ΡΠΏΠΎΠ»Π΅Π·Π½Π°, ΡΠΎ ΡΠ½Π°ΡΠ°Π»Π° Π±ΡΠ΄Π΅Ρ ΡΡΡΡ-ΡΡΡΡ ΡΠ΅ΠΎΡΠΈΠΈ, Π° ΠΏΠΎΡΠΎΠΌ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅. ΠΡΠ»ΠΈ Π²Ρ ΡΠΆΠ΅ Π·Π½Π°ΠΊΠΎΠΌΡ Ρ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠ΅ΠΉ MVC, ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΏΡΠΎΠΏΡΡΡΠΈΡΡ ΡΠ°Π·Π΄Π΅Π» Ρ ΡΠ΅ΠΎΡΠΈΠ΅ΠΉ ΠΈ ΡΡΠ°Π·Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
1. Π’Π΅ΠΎΡΠΈΡ
Π¨Π°Π±Π»ΠΎΠ½ MVC ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ΅Π»ΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ΄Π΅Π»Π΅Π½ΠΈΠ΅ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΈ ΠΎΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅, ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π»Π΅Π³ΡΠ΅ ΠΌΠ°ΡΡΡΠ°Π±ΠΈΡΡΠ΅ΡΡΡ, ΡΠ΅ΡΡΠΈΡΡΠ΅ΡΡΡ, ΡΠΎΠΏΡΠΎΠ²ΠΎΠΆΠ΄Π°Π΅ΡΡΡ ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΡΠ°Π»ΡΠ½ΡΡ ΡΡ Π΅ΠΌΡ ΡΠ°Π±Π»ΠΎΠ½Π° MVC (Π½Π° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄ β ΡΡΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΄Π°ΡΠ½Π°Ρ ΡΡ Π΅ΠΌΠ° ΠΈΠ· ΡΠ΅Ρ , ΡΡΠΎ Ρ Π²ΠΈΠ΄Π΅Π»):
Π Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ΅ MVC ΠΌΠΎΠ΄Π΅Π»Ρ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠΈ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ, Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΠΈ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ.
Π’ΠΈΠΏΠΈΡΠ½ΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΡΠ°Π±ΠΎΡΡ MVC-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
ΠΠΎΠ΄Π΅Π»Ρ β ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΈ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ (ΡΡΠΎ ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ORM), ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ°Π²ΠΈΠ»Π° Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ) ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ
Π΄Π°Π½Π½ΡΡ
, ΡΡΠΎ Π·Π°ΡΠ°ΡΡΡΡ Π΄Π΅Π»Π°Π΅Ρ Π΅Π΅ ΠΎΡΠ΅Π½Ρ ΡΠΎΠ»ΡΡΠΎΠΉ, ΡΡΠΎ Π²ΠΏΠΎΠ»Π½Π΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΠΎ.
ΠΠΎΠ΄Π΅Π»Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π½Π°ΠΏΡΡΠΌΡΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΎΠ²Π°ΡΡ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅, ΠΎΡΠ½ΠΎΡΡΡΠΈΠ΅ΡΡ ΠΊ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅.
ΠΠΎΠ΄Π΅Π»Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ HTML ΠΈΠ»ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠ΄ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡΡΡ Π² Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΎΡ Π½ΡΠΆΠ΄ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. Π’Π°ΠΊΠΎΠΉ ΠΊΠΎΠ΄ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π² Π²ΠΈΠ΄Π°Ρ
.
ΠΠ΄Π½Π° ΠΈ ΡΠ° ΠΆΠ΅ ΠΌΠΎΠ΄Π΅Π»Ρ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ: ΠΌΠΎΠ΄Π΅Π»Ρ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΊΠ°ΠΊ Π² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΎΠΉ, ΡΠ°ΠΊ ΠΈ Π² Π°Π΄ΠΌΠΈΠ½ΠΈΡΡΡΠ°ΡΠΈΠ²Π½ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΠ½Π΅ΡΡΠΈ ΠΎΠ±ΡΠΈΠΉ ΠΊΠΎΠ΄ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ ΠΈ Π½Π°ΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΡΡΡ ΠΎΡ Π½Π΅Π³ΠΎ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡ Π² Π½Π°ΡΠ»Π΅Π΄Π½ΠΈΠΊΠ°Ρ
ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½ΡΠ΅ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄Ρ.
ΠΠΈΠ΄ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ Π·Π°Π΄Π°Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΡ
ΠΈΠ· ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ.
ΠΠΈΠ΄Ρ cΠΎΠ΄Π΅ΡΠΆΠ°Ρ HTML-ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ ΠΈ Π½Π΅Π±ΠΎΠ»ΡΡΠΈΠ΅ Π²ΡΡΠ°Π²ΠΊΠΈ PHP-ΠΊΠΎΠ΄Π° Π΄Π»Ρ ΠΎΠ±Ρ
ΠΎΠ΄Π°, ΡΠΎΡΠΌΠ°ΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
.
ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°ΠΏΡΡΠΌΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ Π±Π°Π·Π΅ Π΄Π°Π½Π½ΡΡ
. ΠΡΠΈΠΌ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ.
ΠΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ Π΄Π°Π½Π½ΡΠΌΠΈ, ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΌΠΈ ΠΈΠ· Π·Π°ΠΏΡΠΎΡΠ° ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΡΡ Π·Π°Π΄Π°ΡΡ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ.
ΠΠΎΠΆΠ΅Ρ Π½Π°ΠΏΡΡΠΌΡΡ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΡΠ²ΠΎΠΉΡΡΠ²Π°ΠΌ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Π°ΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈΠ»ΠΈ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π³ΠΎΡΠΎΠ²ΡΡ
ΠΊ Π²ΡΠ²ΠΎΠ΄Ρ Π΄Π°Π½Π½ΡΡ
.
ΠΠΈΠ΄Ρ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΡΡ Π½Π° ΠΎΠ±ΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ, ΠΎΠ±ΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ
ΡΡΡΠ°Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΏΠΊΡ ΠΈ ΠΏΠΎΠ΄Π²Π°Π») ΠΈ ΡΠ°ΡΡΠΈ ΡΠ°Π±Π»ΠΎΠ½Π°, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΡΡ
Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΡΡ
ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠ»ΠΈ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΎΡΠΌ Π²Π²ΠΎΠ΄Π° Π΄Π°Π½Π½ΡΡ
.
ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ β ΡΠ²ΡΠ·ΡΡΡΠ΅Π΅ Π·Π²Π΅Π½ΠΎ, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡΠ΅Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π²ΠΈΠ΄Ρ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΡ Π² ΡΠ°Π±ΠΎΡΠ΅Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΠΎΡΠ²Π΅ΡΠ°Π΅Ρ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ. ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ SQL-Π·Π°ΠΏΡΠΎΡΠΎΠ². ΠΡ
Π»ΡΡΡΠ΅ Π΄Π΅ΡΠΆΠ°ΡΡ Π² ΠΌΠΎΠ΄Π΅Π»ΡΡ
. ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ HTML ΠΈ Π΄ΡΡΠ³ΠΎΠΉ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ. ΠΡ ΡΡΠΎΠΈΡ Π²ΡΠ½ΠΎΡΠΈΡΡ Π² Π²ΠΈΠ΄Ρ.
Π Ρ
ΠΎΡΠΎΡΠΎ ΡΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠΌ MVC-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΠΎΡΠ΅Π½Ρ ΡΠΎΠ½ΠΊΠΈΠ΅ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΡΡΠΎΠΊ ΠΊΠΎΠ΄Π°. Π§Π΅Π³ΠΎ, Π½Π΅ ΡΠΊΠ°ΠΆΠ΅ΡΡ ΠΎ Stupid Fat Controllers (SFC) Π² CMS Joomla. ΠΠΎΠ³ΠΈΠΊΠ° ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠΈΠΏΠΈΡΠ½Π° ΠΈ Π±ΠΎΠ»ΡΡΠ°Ρ Π΅Π΅ ΡΠ°ΡΡΡ Π²ΡΠ½ΠΎΡΠΈΡΡΡ Π² Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ.
ΠΠΎΠ΄Π΅Π»ΠΈ, Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, ΠΎΡΠ΅Π½Ρ ΡΠΎΠ»ΡΡΡΠ΅ ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π±ΠΎΠ»ΡΡΡΡ ΡΠ°ΡΡΡ ΠΊΠΎΠ΄Π°, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΎΠΉ Π΄Π°Π½Π½ΡΡ
, Ρ.ΠΊ. ΡΡΡΡΠΊΡΡΡΠ° Π΄Π°Π½Π½ΡΡ
ΠΈ Π±ΠΈΠ·Π½Π΅Ρ-Π»ΠΎΠ³ΠΈΠΊΠ°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ°ΡΡΡ Π² Π½ΠΈΡ
, ΠΎΠ±ΡΡΠ½ΠΎ Π΄ΠΎΠ²ΠΎΠ»ΡΠ½ΠΎ ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Π° Π΄Π»Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
1.1. Front Controller ΠΈ Page Controller
Π Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅, Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Ρ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΡΠΎΡ ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²ΠΎΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ΠΎΠ² ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ. ΠΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΡΠ΅ΠΉΡΠ°Ρ Π½Π° Π°Π΄ΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊΡ Π±ΡΠ°ΡΠ·Π΅ΡΠ° β ΠΏΠΎ ΡΡΠΎΠΉ ΡΡΡΠ»ΠΊΠ΅ Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΈ Π΄Π°Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ. ΠΠΎ Π΄ΡΡΠ³ΠΈΠΌ ΡΡΡΠ»ΠΊΠ°ΠΌ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π½Π°Ρ ΠΎΠ΄ΡΡΠΈΠΌΡΡ ΡΠΏΡΠ°Π²Π° Π½Π° ΡΡΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠ΅, Π²Ρ ΠΏΠΎΠ»ΡΡΠΈΡΠ΅ Π΄ΡΡΠ³ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΡΡΡΠ»ΠΊΠ° ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ.
ΠΠ°Π΄Π΅ΡΡΡ, Π²Ρ ΡΠΆΠ΅ ΡΡΠΏΠ΅Π»ΠΈ Π·Π°ΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Ρ ΡΠ°Π·Π½ΡΡ ΡΠ°ΠΉΡΠΎΠ² ΠΌΠΎΠ³ΡΡ Π±ΡΡΡ ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΡΠ΅ ΡΠ°Π·Π½ΡΠ΅ ΡΠΎΡΠΌΠ°ΡΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΎΡΠΌΠ°Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ web-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. Π₯ΠΎΡΡ ΡΡΠΎ ΠΈ Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ°ΠΊ, Π½ΠΎ Π² Π±ΠΎΠ»ΡΡΠΈΠ½ΡΡΠ²Π΅ ΡΠ»ΡΡΠ°Π΅Π² ΡΡΠΎ ΡΠ²Π½ΡΠΉ ΡΠ°ΠΊΡ.
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄Π²Π° Π²Π°ΡΠΈΠ°Π½ΡΠ° Π°Π΄ΡΠ΅ΡΠ½ΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊΠΎΠΉ-ΡΠΎ ΡΠ΅ΠΊΡΡ ΠΈ ΠΏΡΠΎΡΠΈΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ.
ΠΠΎΠ΄Ρ ΠΎΠ΄ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΡΠΎΡΠ΅ΠΊ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π½Π° ΡΠΎΡΡΠΌΠ°Ρ Ρ Π΄Π²ΠΈΠΆΠΊΠΎΠΌ phpBB. ΠΡΠΎΡΠΌΠΎΡΡ ΡΠΎΡΡΠΌΠ° ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΡΠ΅Π½Π°ΡΠΈΠΉ viewforum.php, ΠΏΡΠΎΡΠΌΠΎΡΡ ΡΠΎΠΏΠΈΠΊΠ° ΡΠ΅ΡΠ΅Π· viewtopic.php ΠΈ Ρ.Π΄. ΠΡΠΎΡΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, Ρ Π΄ΠΎΡΡΡΠΏΠΎΠΌ ΡΠ΅ΡΠ΅Π· ΠΎΠ΄ΠΈΠ½ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ°ΠΉΠ» ΡΡΠ΅Π½Π°ΡΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Π±Π»ΡΠ΄Π°ΡΡ Π² ΠΌΠΎΠ΅ΠΉ Π»ΡΠ±ΠΈΠΌΠΎΠΉ CMS MODX, Π³Π΄Π΅ Π²ΡΠ΅ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΡ ΠΎΠ΄ΡΡ ΡΠ΅ΡΠ΅Π· index.php.
ΠΡΠΈ Π΄Π²Π° ΠΏΠΎΠ΄Ρ ΠΎΠ΄Π° ΡΠΎΠ²Π΅ΡΡΠ΅Π½Π½ΠΎ ΡΠ°Π·Π»ΠΈΡΠ½Ρ. ΠΠ΅ΡΠ²ΡΠΉ β Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠ΅Π½ Π΄Π»Ρ ΡΠ°Π±Π»ΠΎΠ½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΡΡΠ°Π½ΠΈΡ (Page Controller), Π° Π²ΡΠΎΡΠΎΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ ΡΠ΅Π°Π»ΠΈΠ·ΡΠ΅ΡΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ½ΠΎΠΌ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² (Front Controller). ΠΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ ΡΡΡΠ°Π½ΠΈΡ Ρ ΠΎΡΠΎΡΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ Π΄Π»Ρ ΡΠ°ΠΉΡΠΎΠ² Ρ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΎΠΉ. Π ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΠ΅Ρ Π²ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ΅ Π·Π°ΠΏΡΠΎΡΠΎΠ² Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΌΠ΅ΡΡΠ΅, ΡΡΠΎ Π΄Π°ΡΡ Π΅ΠΌΡ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ, Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΊΠΎΡΠΎΡΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΡΡΠ΄Π½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΡΠ΅ΠΌ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠ΅ΡΠ°ΡΡΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠΌ ΡΡΡΠ°Π½ΠΈΡ. Π― Π½Π΅ Π±ΡΠ΄Ρ Π²Π΄Π°Π²Π°ΡΡΡΡ Π² ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΡΡΡΠ°Π½ΠΈΡ, Π° ΡΠΊΠ°ΠΆΡ Π»ΠΈΡΡ, ΡΡΠΎ Π² ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ Π±ΡΠ΄Π΅Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Π·Π°ΠΏΡΠΎΡΠΎΠ² (Π½Π΅ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅).
1.2. ΠΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ URL
ΠΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ URL ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΈΠ΅ΠΌ Π·Π°ΠΏΡΠΎΡΠΎΠ² Ρ URL, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π§ΠΠ£, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ΅ΠΌΠ°Π½ΡΠΈΡΠ΅ΡΠΊΠΈ Π·Π½Π°ΡΠΈΠΌΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΉ ΠΈ ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Ρ Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠΎΠ²ΠΎΠΉ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ.
Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π΄Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΡ, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠ΅ΠΉ ΡΠΎΡΠΌΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ, URL ΠΌΠΎΠ³ Π±Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
http://www.example.com/contacts.php?action=feedback
ΠΡΠΈΠ±Π»ΠΈΠ·ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΊΠΎΠ΄ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ Π² ΡΠ°ΠΊΠΎΠΌ ΡΠ»ΡΡΠ°Π΅:
ΠΡΠΌΠ°Ρ, ΠΏΠΎΡΡΠΈ Π²ΡΠ΅ ΡΠ°ΠΊ ΡΠ°Π½ΡΡΠ΅ Π΄Π΅Π»Π°Π»ΠΈ.
Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π΄Π²ΠΈΠΆΠΊΠ° ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ URL Π²Ρ ΡΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΡΠΎΠΉ ΠΆΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ Π½Π°ΡΡΡΠΎΠΈΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° ΠΏΡΠΈΠ΅ΠΌ ΡΠ°ΠΊΠΈΡ
Π·Π°ΠΏΡΠΎΡΠΎΠ²:
http://www.example.com/contacts/feedback
ΠΠ΄Π΅ΡΡ contacts ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ, Π° feedback β ΡΡΠΎ ΠΌΠ΅ΡΠΎΠ΄ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° contacts, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠΈΠΉ ΡΠΎΡΠΌΡ ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΉ ΡΠ²ΡΠ·ΠΈ ΠΈ Ρ.Π΄. ΠΡ Π΅ΡΠ΅ Π²Π΅ΡΠ½Π΅ΠΌΡΡ ΠΊ ΡΡΠΎΠΌΡ Π²ΠΎΠΏΡΠΎΡΡ Π² ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΠΉ ΡΠ°ΡΡΠΈ.
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ Π·Π½Π°ΡΡ, ΡΡΠΎ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΡ
Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ² ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΌΠ°ΡΡΡΡΡΡ URL (ΡΠΊΠ°Π·Π°ΡΡ, ΡΡΠΎ ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΊΠ°ΠΆΠ΄Π°Ρ ΡΠ°ΡΡΡ URL) ΠΈ ΠΏΡΠ°Π²ΠΈΠ»Π° ΠΈΡ
ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ.
Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΠΎΠ±Π»Π°Π΄Π°Π΅ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΡΠΌΠΈ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ Π·Π½Π°Π½ΠΈΡΠΌΠΈ, ΡΡΠΎΠ±Ρ ΠΏΠ΅ΡΠ΅ΠΉΡΠΈ ΠΊ ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅.
2. ΠΡΠ°ΠΊΡΠΈΠΊΠ°
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠΎΠ·Π΄Π°Π΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΡΡ ΡΡΡΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠ°ΠΏΠΎΠΊ:
ΠΠ°Π±Π΅Π³Π°Ρ Π²ΠΏΠ΅ΡΠ΅Π΄, ΡΠΊΠ°ΠΆΡ, ΡΡΠΎ Π² ΠΏΠ°ΠΏΠΊΠ΅ core Π±ΡΠ΄ΡΡ Ρ
ΡΠ°Π½ΠΈΡΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ Model, View ΠΈ Controller.
ΠΡ
ΠΏΠΎΡΠΎΠΌΠΊΠΈ Π±ΡΠ΄ΡΡ Ρ
ΡΠ°Π½ΠΈΡΡΡΡ Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡΡ
controllers, models ΠΈ views. Π€Π°ΠΉΠ» index.php ΡΡΠΎ ΡΠΎΡΠΊΠ° Π² Ρ
ΠΎΠ΄Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π€Π°ΠΉΠ» bootstrap.php ΠΈΠ½ΠΈΡΠΈΠΈΡΡΠ΅Ρ Π·Π°Π³ΡΡΠ·ΠΊΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Ρ Π²ΡΠ΅ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΡΠ΅ ΠΌΠΎΠ΄ΡΠ»ΠΈ ΠΈ ΠΏΡ.
ΠΡΠ΄Π΅ΠΌ ΠΈΠ΄ΡΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ; ΠΎΡΠΊΡΠΎΠ΅ΠΌ ΡΠ°ΠΉΠ» index.php ΠΈ Π½Π°ΠΏΠΎΠ»Π½ΠΈΠΌ Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ:
Π’ΡΡ Π²ΠΎΠΏΡΠΎΡΠΎΠ² Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ.
Π‘Π»Π΅Π΄ΠΎΠΌ, ΡΡΠ°Π·Ρ ΠΆΠ΅ ΠΏΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΡΠ°Π»Ρ bootstrap.php:
ΠΠ΅ΡΠ²ΡΠ΅ ΡΡΠΈ ΡΡΡΠΎΠΊΠΈ Π±ΡΠ΄ΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΊΠ° ΡΡΠΎ Π½Π΅ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠΈΠ΅ ΡΠ°ΠΉΠ»Ρ ΡΠ΄ΡΠ°. ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΡΠ°ΠΉΠ» Ρ ΠΊΠ»Π°ΡΡΠΎΠΌ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΠ° ΠΈ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ Π΅Π³ΠΎ Π½Π° Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π° start.
2.1. Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΠ° URL
ΠΠΎΠΊΠ° ΡΡΠΎ ΠΎΡΠΊΠ»ΠΎΠ½ΠΈΠΌΡΡ ΠΎΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Π° MVC ΠΈ Π·Π°ΠΉΠΌΠ΅ΠΌΡΡ ΠΌΡΠ°ΡΡΡΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ. ΠΠ΅ΡΠ²ΡΠΉ Ρο»ΏΠ°Π³, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ, Π·Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π² .htaccess:
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΏΠ΅ΡΠ΅Π½Π°ΠΏΡΠ°Π²ΠΈΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π²ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡ Π½Π° index.php, ΡΡΠΎ Π½Π°ΠΌ ΠΈ Π½ΡΠΆΠ½ΠΎ. ΠΠΎΠΌΠ½ΠΈΡΠ΅ Π² ΠΏΠ΅ΡΠ²ΠΎΠΉ ΡΠ°ΡΡΠΈ ΠΌΡ Π³ΠΎΠ²ΠΎΡΠΈΠ»ΠΈ ΠΎ Front Controller?!
ΠΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ ΠΌΡ ΠΏΠΎΠΌΠ΅ΡΡΠΈΠΌ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΡΠ°ΠΉΠ» route.php Π² Π΄ΠΈΡΠ΅ΠΊΡΠΎΡΠΈΡ core. Π ΡΡΠΎΠΌ ΡΠ°ΠΉΠ»Π΅ ΠΎΠΏΠΈΡΠ΅ΠΌ ΠΊΠ»Π°ΡΡ Route, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΌΠ΅ΡΠΎΠ΄Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ Π±ΡΠ΄ΡΡ Π³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°ΡΡ Π²ΠΈΠ΄ ΡΡΡΠ°Π½ΠΈΡ.
ΠΠ°ΠΌΠ΅ΡΡ, ΡΡΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° ΠΎΡΠ΅Π½Ρ ΡΠΏΡΠΎΡΠ΅Π½Π½Π°Ρ Π»ΠΎΠ³ΠΈΠΊΠ° (Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΎΠ±ΡΠ΅ΠΌΠ½ΡΠΉ ΠΊΠΎΠ΄) ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π°ΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ. ΠΡΠΎ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π½Π°ΠΌΠ΅ΡΠ΅Π½ΠΎ, Ρ.ΠΊ. Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π·Π°ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΉ ΡΡΠ°ΡΡΠΈ. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡβ¦
Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ½ΠΊΡΠΈΠΈ explode ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡ ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π°Π΄ΡΠ΅ΡΠ° Π½Π° ΡΠΎΡΡΠ°Π²Π»ΡΡΠΈΠ΅. Π ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΌΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΠΌ ΠΈΠΌΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°, Π΄Π»Ρ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡΠΈΠΌΠ΅ΡΠ°, ΡΡΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ contacts ΠΈ ΠΈΠΌΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ, Π² Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ β feedback.
ΠΠ°Π»Π΅Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ°ΠΉΠ» ΠΌΠΎΠ΄Π΅Π»ΠΈ (ΠΌΠΎΠ΄Π΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΡΡΡΡΡΠ²ΠΎΠ²Π°ΡΡ) ΠΈ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°, Π΅ΡΠ»ΠΈ ΡΠ°ΠΊΠΎΠ²ΡΠ΅ ΠΈΠΌΠ΅ΡΡΡΡ ΠΈ Π½Π°ΠΊΠΎΠ½Π΅Ρ, ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈ Π²ΡΠ·ΡΠ²Π°Π΅ΡΡΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, ΠΎΠΏΡΡΡ ΠΆΠ΅, Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΎ Π±ΡΠ»ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΎ Π² ΠΊΠ»Π°ΡΡΠ΅ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ°.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, ΠΏΡΠΈ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π΅, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ, ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ:
example.com/portfolio
ΠΈΠ»ΠΈ
example.com/portfolio/index
ΡΠΎΡΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ:
2.2. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΡ ΠΊ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ MVC
ΠΠ΅ΡΠ΅ΠΉΠ΄Π΅ΠΌ Π² ΠΏΠ°ΠΏΠΊΡ core ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ ΡΠ°ΠΉΠ»Ρ route.php Π΅ΡΠ΅ ΡΡΠΈ ΡΠ°ΠΉΠ»Π°: model.php, view.php ΠΈ controller.php
ΠΠ°ΠΏΠΎΠΌΠ½Ρ, ΡΡΠΎ ΠΎΠ½ΠΈ Π±ΡΠ΄ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΊΠ»Π°ΡΡΡ, ΠΊ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΡΠ΅ΠΉΡΠ°Ρ ΠΈ ΠΏΡΠΈΡΡΡΠΏΠΈΠΌ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° model.php
ΠΠ»Π°ΡΡ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΏΡΡΡΠΎΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ , ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅ΠΊΡΡΠ²Π°ΡΡΡΡ Π² ΠΊΠ»Π°ΡΡΠ°Ρ ΠΏΠΎΡΠΎΠΌΠΊΠ°Ρ . ΠΠΎΠ³Π΄Π° ΠΌΡ Π±ΡΠ΄Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΠ»Π°ΡΡΡ ΠΏΠΎΡΠΎΠΌΠΊΠΈ Π²ΡΠ΅ ΡΡΠ°Π½Π΅Ρ ΠΏΠΎΠ½ΡΡΠ½Π΅ΠΉ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° view.php
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ±ΡΠΈΠΉ ΡΠ°Π±Π»ΠΎΠ½ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ header, menu, sidebar ΠΈ footer, Π° ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΡΡΠ°Π½ΠΈΡ Π±ΡΠ΄Π΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠΌ Π²ΠΈΠ΄Π΅. ΠΠΏΡΡΡ ΠΆΠ΅ ΡΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΡΠΏΡΠΎΡΠ΅Π½ΠΈΡ.
Π‘ΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π° controller.php
ΠΠ΅ΡΠΎΠ΄ action_index β ΡΡΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΠ΅, Π²ΡΠ·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π΅Π³ΠΎ ΠΌΡ ΠΏΠ΅ΡΠ΅ΠΊΡΠΎΠ΅ΠΌ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ².
2.3. Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΊΠ»Π°ΡΡΠΎΠ² ΠΏΠΎΡΠΎΠΌΠΊΠΎΠ² Model ΠΈ Controller, ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ View’s
Π’Π΅ΠΏΠ΅ΡΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ ΡΠ°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅! ΠΠ°Ρ ΡΠ°ΠΉΡ-Π²ΠΈΠ·ΠΈΡΠΊΠ° Π±ΡΠ΄Π΅Ρ ΡΠΎΡΡΠΎΡΡΡ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΠΈΡ ΡΡΡΠ°Π½ΠΈΡ:
ΠΠ° ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠ΅ΠΌ ΡΠΈΡΡΠ½ΠΊΠ΅ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎ Π²ΡΠ΄Π΅Π»Π΅Π½ ΡΠ°ΠΉΠ» template_view.php β ΡΡΠΎ ΡΠ°Π±Π»ΠΎΠ½, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΎΠ±ΡΡΡ Π΄Π»Ρ Π²ΡΠ΅Ρ ΡΡΡΠ°Π½ΠΈΡ ΡΠ°Π·ΠΌΠ΅ΡΠΊΡ. Π ΠΏΡΠΎΡΡΠ΅ΠΉΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΠΎΠ½ ΠΌΠΎΠ³ Π±Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ ΡΠ°ΠΊ:
ΠΠ»Ρ ΠΏΡΠΈΠ΄Π°Π½ΠΈΡ ΡΠ°ΠΉΡΡ ΠΏΡΠ΅Π·Π΅Π½ΡΠ°Π±Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΈΠ΄Π° ΡΠ²Π΅ΡΡΡΠ°Π΅ΠΌ CSS ΡΠ°Π±Π»ΠΎΠ½ ΠΈ ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠΈΡΡΠ΅ΠΌ Π΅Π³ΠΎ Π² Π½Π°Ρ ΡΠ°ΠΉΡ ΠΏΡΡΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΡΡΡΡΠΊΡΡΡΡ HTML-ΡΠ°Π·ΠΌΠ΅ΡΠΊΠΈ ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ CSS ΠΈ JavaScript ΡΠ°ΠΉΠ»ΠΎΠ²:
Π ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ, Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«Π Π΅Π·ΡΠ»ΡΡΠ°ΡΒ», ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΡΡΠ»ΠΊΠ° Π½Π° GitHub-ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠΌ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΎΠ΄Π΅Π»Π°Π½Ρ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎ ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΡΡΠ΅Π½ΡΠΊΠΎΠ³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π°.
2.3.1. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π³Π»Π°Π²Π½ΡΡ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° controller_main.php, Π²ΠΎΡ Π΅Π³ΠΎ ΠΊΠΎΠ΄:
Π ΠΌΠ΅ΡΠΎΠ΄ generate ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΠΊΠ»Π°ΡΡΠ° View ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΈΠΌΠ΅Π½Π° ΡΠ°ΠΉΠ»ΠΎΠ² ΠΎΠ±ΡΠ΅Π³ΠΎ ΡΠ°Π±Π»ΠΎΠ½Π° ΠΈ Π²ΠΈΠ΄Π° c ΠΊΠΎΠ½ΡΠ΅Π½ΡΠΎΠΌ ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΠΎΠΌΠΈΠΌΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΠΎΠ³ΠΎ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ΅ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΠΆΠ΅ ΠΌΠΎΠ³ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡΡΡ ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ.
Π€Π°ΠΉΠ» Ρ ΠΎΠ±ΡΠΈΠΌ Π²ΠΈΠ΄ΠΎΠΌ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠ°Π½Π΅Π΅. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°ΠΉΠ» ΠΊΠΎΠ½ΡΠ΅Π½ΡΠ° main_view.php:
ΠΠ΄Π΅ΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡΡ ΠΏΡΠΎΡΡΠ°Ρ ΡΠ°Π·ΠΌΠ΅ΡΠΊΠ° Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ Π»ΠΈΠ±ΠΎ PHP-Π²ΡΠ·ΠΎΠ²ΠΎΠ².
ΠΠ»Ρ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ Π³Π»Π°Π²Π½ΠΎΠΉ ΡΡΡΠ°Π½ΠΈΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡΡΡΠΈΡ Π°Π΄ΡΠ΅ΡΠΎΠ²:
ΠΡΠΈΠΌΠ΅Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²ΠΈΠ΄Π°, ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°ΡΡΠ΅Π³ΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π΄Π°Π»Π΅Π΅.
2.3.2. Π‘ΠΎΠ·Π΄Π°Π΄Π°Π΅ΠΌ ΡΡΡΠ°Π½ΠΈΡΡ Β«ΠΠΎΡΡΡΠΎΠ»ΠΈΠΎΒ»
Π Π½Π°ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅, ΡΡΡΠ°Π½ΠΈΡΠ° Β«ΠΠΎΡΡΡΠΎΠ»ΠΈΠΎΒ» β ΡΡΠΎ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠ°Ρ ΠΌΠΎΠ΄Π΅Π»Ρ.
ΠΠΎΠ΄Π΅Π»Ρ ΠΎΠ±ΡΡΠ½ΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΌΠ΅ΡΠΎΠ΄Ρ Π²ΡΠ±ΠΎΡΠΊΠΈ Π΄Π°Π½Π½ΡΡ
, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
ΠΠ»Π°ΡΡ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΌΠΎΠ΄Π΅Π»ΠΈ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ controller_portfolio.php, Π²ΠΎΡ Π΅Π³ΠΎ ΠΊΠΎΠ΄:
Π ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ data Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ ΠΌΠ°ΡΡΠΈΠ², Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΠΌΡΠΉ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ get_data, ΠΊΠΎΡΠΎΡΡΠΉ ΠΌΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»ΠΈ ΡΠ°Π½Π΅Π΅.
ΠΠ°Π»Π΅Π΅ ΡΡΠ° ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° ΠΌΠ΅ΡΠΎΠ΄Π° generate, Π² ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ: ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Ρ ΠΎΠ±ΡΠΈΠΌ ΡΠ°Π±Π»ΠΎΠ½ ΠΈ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°, ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠ΅Π³ΠΎ Π²ΠΈΠ΄ c ΠΊΠΎΠ½ΡΠ΅Π½ΡΠΎΠΌ ΡΡΡΠ°Π½ΠΈΡΡ.
ΠΠΈΠ΄ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΠΈΠΉ ΠΊΠΎΠ½ΡΠ΅Π½Ρ ΡΡΡΠ°Π½ΠΈΡΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² ΡΠ°ΠΉΠ»Π΅ portfolio_view.php.
ΠΠ΄Π΅ΡΡ Π²ΡΠ΅ ΠΏΡΠΎΡΡΠΎ, Π²ΠΈΠ΄ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ°Π΅Ρ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ ΠΈΠ· ΠΌΠΎΠ΄Π΅Π»ΠΈ.
2.3.3. Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ
ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΡΠ°Π½ΠΈΡΡ ΡΠΎΠ·Π΄Π°ΡΡΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ. ΠΡ ΠΊΠΎΠ΄ Π΄ΠΎΡΡΡΠΏΠ΅Π½ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π½Π° GitHub, ΡΡΡΠ»ΠΊΠ° Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ ΡΡΠ°ΡΡΠΈ, Π² ΡΠ°Π·Π΄Π΅Π»Π΅ Β«Π Π΅Π·ΡΠ»ΡΡΠ°ΡΒ».
3. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ
Π Π²ΠΎΡ ΡΡΠΎ ΠΏΠΎΠ»ΡΡΠΈΠ»ΠΎΡΡ Π² ΠΈΡΠΎΠ³Π΅:
Π Π²ΠΎΡ Π² ΡΡΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Ρ Π½Π°Π±ΡΠΎΡΠ°Π» ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΊΠ»Π°ΡΡΡ (ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠ΅ ΠΈΠΌ Π²ΠΈΠ΄Ρ):
4. ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π¨Π°Π±Π»ΠΎΠ½ MVC ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ½ΠΎΠΉ ΠΎΡΠ½ΠΎΠ²Ρ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠ°Ρ ΠΈ CMS, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ·Π΄Π°Π²Π°Π»ΠΈΡΡ Π΄Π»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ ΠΈΠΌΠ΅ΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΡΠ°Π·ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π° Π±ΠΎΠ»Π΅Π΅ ΠΊΠΎΡΠΎΡΠΊΠΈΠΉ ΡΡΠΎΠΊ. ΠΡΠΎ ΡΡΠ°Π»ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠΌ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ Π°Π±ΡΡΡΠ°ΠΊΡΠΈΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ Π΅ΡΡΡ ΠΏΡΠ΅Π΄Π΅Π» ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠΏΠ΅ΡΠΈΡΠΎΠ²Π°ΡΡ ΡΠ΅Π»ΠΎΠ²Π΅ΡΠ΅ΡΠΊΠΈΠΉ ΠΌΠΎΠ·Π³.
ΠΠΎ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ², ΡΠΈΠΏΠ° Yii ΠΈΠ»ΠΈ Kohana, ΡΠΎΡΡΠΎΡΡΠΈΡ ΠΈΠ· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΡ ΡΠΎΡΠ΅Π½ ΡΠ°ΠΉΠ»ΠΎΠ², ΠΏΡΠΈ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ΅ ΠΏΡΠΎΡΡΡΡ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΉΡΠΎΠ²-Π²ΠΈΠ·ΠΈΡΠΊΠΎΠΊ) Π½Π΅ Π²ΡΠ΅Π³Π΄Π° ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ. Π’Π΅ΠΏΠ΅ΡΡ ΠΌΡ ΡΠΌΠ΅Π΅ΠΌ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΠΊΡΠ°ΡΠΈΠ²ΡΡ MVC ΠΌΠΎΠ΄Π΅Π»Ρ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°ΡΡ Php, Html, CSS ΠΈ JavaScript ΠΊΠΎΠ΄ Π² ΠΎΠ΄Π½ΠΎΠΌ ΡΠ°ΠΉΠ»Π΅.
ΠΠ°Π½Π½Π°Ρ ΡΡΠ°ΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΊΠΎΡΠ΅Π΅ ΠΎΡΠΏΡΠ°Π²Π½ΠΎΠΉ ΡΠΎΡΠΊΠΎΠΉ Π΄Π»Ρ ΠΈΠ·ΡΡΠ΅Π½ΠΈΡ CMF, ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠΌ ΡΠ΅Π³ΠΎ-ΡΠΎ ΠΈΡΡΠΈΠ½Π½ΠΎ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ, ΡΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Π·ΡΡΡ Π·Π° ΠΎΡΠ½ΠΎΠ²Ρ ΡΠ²ΠΎΠ΅Π³ΠΎ Π²Π΅Π±-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ½Π° Π΄Π°ΠΆΠ΅ Π²Π΄ΠΎΡ Π½ΠΎΠ²ΠΈΠ»Π° ΠΠ°Ρ ΠΈ Π²Ρ ΡΠΆΠ΅ ΠΏΠΎΠ΄ΡΠΌΡΠ²Π°Π΅ΡΠ΅ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΠ²ΠΎΠΉ ΠΌΠΈΠΊΡΠΎΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ ΠΈΠ»ΠΈ CMS, ΠΎΡΠ½ΠΎΠ²Π°Π½Π½ΡΠ΅ Π½Π° MVC. ΠΠΎ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ΅ΡΠ°ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Π½ΠΎΠΉ Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄ Ρ Β«Π±Π»Π΅ΠΊΠ΄ΠΆΠ΅ΠΊΠΎΠΌ ΠΈ ΡΠ»ΡΡ Π°ΠΌΠΈΒ», Π΅ΡΠ΅ ΡΠ°Π· ΠΏΠΎΠ΄ΡΠΌΠ°ΠΉΡΠ΅, ΠΌΠΎΠΆΠ΅Ρ Π²Π°ΡΠΈ ΡΡΠΈΠ»ΠΈΡ ΡΠ°Π·ΡΠΌΠ½Π΅Π΅ Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ Π½Π° ΡΠ°Π·Π²ΠΈΡΠΈΠ΅ ΠΈ Π² ΠΏΠΎΠΌΠΎΡΡ ΡΠΎΠΎΠ±ΡΠ΅ΡΡΠ²Ρ ΡΠΆΠ΅ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠ°?!
P.S.: Π‘ΡΠ°ΡΡΡ Π±ΡΠ»Π° ΠΏΠ΅ΡΠ΅ΠΏΠΈΡΠ°Π½Π° Ρ ΡΡΠ΅ΡΠΎΠΌ Π½Π΅ΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΌΠ΅ΡΠ°Π½ΠΈΠΉ, ΠΎΡΡΠ°Π²Π»Π΅Π½Π½ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ . ΠΡΠΈΡΠΈΠΊΠ° ΠΎΠΊΠ°Π·Π°Π»Π°ΡΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ. Π‘ΡΠ΄Ρ ΠΏΠΎ ΠΎΡΠΊΠ»ΠΈΠΊΡ: ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ, ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡΠΌ Π² Π»ΠΈΡΠΊΡ ΠΈ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Ρ ΡΠ·Π΅ΡΠΎΠ² Π΄ΠΎΠ±Π°Π²ΠΈΠ²ΡΠΈΡ ΠΏΠΎΡΡ Π² ΠΈΠ·Π±ΡΠ°Π½Π½ΠΎΠ΅ Π·Π°ΡΠ΅Ρ Π½Π°ΠΏΠΈΡΠ°ΡΡ ΡΡΠΎΡ ΠΏΠΎΡΡ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ Π½Π΅ ΡΠ°ΠΊΠΎΠΉ ΡΠΆ ΠΏΠ»ΠΎΡ ΠΎΠΉ. Π ΡΠΎΠΆΠ°Π»Π΅Π½ΠΈΡ, Π½Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ΅ΡΡΡ Π²ΡΠ΅ ΠΏΠΎΠΆΠ΅Π»Π°Π½ΠΈΡ ΠΈ Π½Π°ΠΏΠΈΡΠ°ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΈ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΠΏΠΎ ΠΏΡΠΈΡΠΈΠ½Π΅ Π½Π΅Ρ Π²Π°ΡΠΊΠΈ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈβ¦ Π½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ΅ ΡΠ°ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠ΅ Π»ΠΈΡΠ½ΠΎΡΡΠΈ, ΠΊΡΠΎ ΠΌΠΈΠ½ΡΡΠΎΠ²Π°Π» ΠΏΠ΅ΡΠ²ΠΎΠ½Π°ΡΠ°Π»ΡΠ½ΡΠΉ Π²Π°ΡΠΈΠ°Π½Ρ. Π£Π΄Π°ΡΠΈ Π² ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ !
5. ΠΠΎΠ΄Π±ΠΎΡΠΊΠ° ΠΏΠΎΠ»Π΅Π·Π½ΡΡ ΡΡΡΠ»ΠΎΠΊ ΠΏΠΎ ΡΠ°Π±ΠΆΡ
Π ΡΡΠ°ΡΡΠ΅ ΠΎΡΠ΅Π½Ρ ΡΠ°ΡΡΠΎ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ΅ΠΌΠ° Π²Π΅Π±-ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ² β ΡΡΠΎ ΠΎΡΠ΅Π½Ρ ΠΎΠ±ΡΠΈΡΠ½Π°Ρ ΡΠ΅ΠΌΠ°, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ Π΄Π°ΠΆΠ΅ ΠΌΠΈΠΊΡΠΎΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΈ ΡΠΎΡΡΠΎΡΡ ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² Ρ ΠΈΡΡΠΎ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°Π»Π°ΡΡ Π±Ρ Π½Π΅ ΠΎΠ΄Π½Π° ΡΡΠ°ΡΡΡ, ΡΡΠΎΠ±Ρ ΡΠ°ΡΡΠΊΠ°Π·Π°ΡΡ ΠΎΠ± ΡΡΠΈΡ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°Ρ . Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ ΡΠ΅ΡΠΈΠ» ΠΏΡΠΈΠ²Π΅ΡΡΠΈ Π·Π΄Π΅ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ ΠΏΠΎΠ΄Π±ΠΎΡΠΊΡ ΡΡΡΠ»ΠΎΠΊ (ΠΏΠΎ ΠΊΠΎΡΠΎΡΡΠΌ Ρ Ρ ΠΎΠ΄ΠΈΠ» ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ΅ ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠΈ), ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°ΡΠ΅ ΠΊΠ°ΡΠ°ΡΡΡΡ ΡΠ΅ΠΌΡ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊΠΎΠ².
5.1. MVC ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ
5.2. Π¨Π°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΈΡ
PHP ΡΠ°ΠΌ ΠΏΠΎ ΡΠ΅Π±Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ°Π±Π»ΠΎΠ½ΠΈΠ·Π°ΡΠΎΡΠΎΠΌ, Π½ΠΎ Π²ΡΠ΅ ΠΆΠ΅β¦