āĻŽāĻĄā§āĻ˛-āĻāĻŋāĻ-āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻā§
āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻ āĻ¤ā§āĻ°āĻŋāĻ° āĻŦā§āĻ¸āĻŋāĻ āĻāĻāĻĄāĻŋā§āĻž āĻŦāĻž āĻā§āĻāĻ¨ā§āĻ˛āĻāĻŋāĻāĻž āĻāĻ¸āĻ˛ā§ āĻā§āĻŦāĻ āĻ¸āĻšāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻāĻ¨āĻ āĻāĻŽāĻ°āĻž āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ
āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻĢāĻŋāĻāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻŋ āĻ
āĻĨāĻŦāĻž āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻžāĻˇā§āĻāĻŽāĻžāĻāĻ āĻāĻ°āĻŋ āĻ¤āĻāĻ¨āĻ āĻāĻāĻžāĻ° āĻā§āĻšāĻžāĻ°āĻž āĻĻā§āĻ°ā§āĻ¤ āĻāĻāĻŋāĻ˛ āĻšā§ā§ āĻ¯āĻžā§āĨ¤
Model-View-Controller (MVC) āĻšāĻ˛ā§ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻĢāĻāĻā§ā§āĻ¯āĻžāĻ° āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ (Software design pattern) āĻ¯āĻž āĻā§āĻĄāĻā§ āĻ¸āĻāĻāĻ āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻāĻ¨ā§āĻ¸ āĻ˛āĻāĻŋāĻ āĻāĻŦāĻ āĻĄāĻžāĻāĻž āĻĒā§āĻ°ā§āĻā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻ˛ā§ā§āĻžāĻ°āĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻ°āĻžāĻā§āĨ¤ āĻāĻ§āĻ°āĻ¨ā§āĻ° āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ°ā§āĻ° āĻŽā§āĻ˛ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻāĻ āĻ¯ā§, āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻŦāĻŋāĻāĻ¨ā§āĻ¸ āĻ˛āĻāĻŋāĻāĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻāĻāĻāĻž āĻā§āĻ°ā§āĻĒā§ āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻŋ āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻŦāĻ āĻāĻāĻāĻžāĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻ
ā§āĻ¯āĻžāĻāĻļāĻ¨ āĻāĻ° āĻ¯ā§ āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻŦāĻž āĻāĻžāĻˇā§āĻāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻŦāĻŋāĻāĻ¨ā§āĻ¸ āĻ˛āĻāĻŋāĻā§āĻ° āĻā§āĻĄā§ āĻšāĻžāĻ¤ āĻ¨āĻž āĻĻāĻŋā§ā§āĻ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦāĨ¤
āĻ¨āĻžāĻŽ āĻļā§āĻ¨ā§āĻ āĻāĻŽāĻ°āĻž āĻšā§āĻ¤ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻāĻŋāĨ¤ āĻŽāĻĄā§āĻ˛ āĻāĻŋāĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ°ā§āĻ° āĻ¤āĻŋāĻ¨āĻāĻŋ āĻ
āĻāĻļ:
āĻŽāĻĄā§āĻ˛ (Model):
āĻāĻ āĻ
āĻāĻļā§ āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻĄāĻžāĻāĻžāĻā§āĻ˛ā§āĻā§ āĻāĻ¨āĻā§āĻ¯āĻžāĻĒāĻ¸ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšā§āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻž āĻ˛āĻāĻŋāĻ, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§ā§ā§āĻ°āĻŋ (add, remove and update information) āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻĨāĻžāĻāĻŦā§āĨ¤ āĻ
āĻ°ā§āĻĨāĻžā§ āĻŽāĻĄā§āĻ˛ āĻ
āĻāĻļ āĻāĻĒāĻ¨āĻžāĻ° āĻĄā§āĻāĻž āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ° āĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻ¨ā§āĻ āĻāĻ°āĻŦā§āĨ¤ āĻāĻ āĻ˛āĻāĻŋāĻāĻā§āĻ˛āĻŋāĻā§ āĻŦāĻ˛āĻž āĻšā§ āĻŦāĻŋāĻāĻ¨ā§āĻ¸ āĻ˛āĻāĻŋāĻ (business logic)āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻŋāĻā§ā§āĻ° āĻā§āĻžāĻ¨ā§āĻž āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻžāĻ āĻšāĻŦā§āĻ¨āĻž, āĻāĻŽāĻžāĻĻā§āĻ°āĻā§ āĻāĻŋāĻā§ variable āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ āĻžāĻ¨ā§āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¨āĻžāĻ āĻĒāĻžāĻ°ā§, āĻāĻŽāĻ°āĻž āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛ā§āĻ¤ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°ā§ā§āĻžāĻāĻ¨ā§ā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻ¨āĻā§āĻ°ā§āĻžāĻ˛āĻžāĻ°āĻā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°āĻŦā§āĨ¤ āĻŽāĻĄā§āĻ˛ āĻ¯ā§ āĻĄāĻžāĻāĻž āĻ°āĻŋāĻāĻžāĻ°ā§āĻŖ āĻāĻ°ā§ āĻ¸ā§āĻā§āĻ˛ā§āĻžāĻā§ âdisplay-neutral-dataâ āĻŦāĻ˛āĻž āĻšā§, āĻ
āĻ°ā§āĻĨāĻžā§ āĻ¸ā§āĻā§āĻ˛ā§āĻžāĻ¤ā§ āĻā§āĻžāĻ¨ā§āĻž āĻĄāĻŋāĻ¸āĻĒā§āĻ˛ā§ āĻĢāĻ°āĻŽā§āĻāĻŋāĻ āĻĨāĻžāĻā§āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻŽāĻ¨ āĻāĻāĻ¨āĻž āĻāĻā§ āĻ¯ā§, āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻāĻ¨āĻĢāĻ°āĻŽā§āĻļāĻ¨ āĻā§āĻ˛ā§ flat file āĻ āĻˇā§āĻā§āĻ° āĻāĻ°ā§āĻāĻŋ, āĻāĻāĻ¨ āĻāĻŦāĻžāĻ° āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻā§āĻāĻŋāĨ¤ āĻ¤āĻžāĻšāĻ˛ā§ āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻā§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° Model āĻ
āĻāĻļā§āĻ view āĻ
āĻĨāĻŦāĻž controller-āĻ āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻĻāĻ°āĻāĻžāĻ° āĻšāĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻŋāĻ (View):
āĻ āĻ
āĻāĻļā§ āĻĨāĻžāĻāĻŦā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° user interface-āĻāĻ° āĻā§āĻžāĻĄ, āĻ
āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻ¨āĻžāĨ¤ āĻ˛āĻāĻŋāĻā§āĻ¯āĻžāĻ˛ āĻā§āĻžāĻ¨ā§āĻž āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ° āĻāĻŋāĻāĻ¤ā§ āĻĨāĻžāĻāĻŦā§āĻ¨āĻžāĨ¤ āĻāĻ° āĻā§āĻĄ āĻĻā§āĻŦāĻžāĻ° āĻāĻāĻāĻžāĻ° āĻāĻāĻāĻž āĻĒā§āĻ āĻĻā§āĻāĻŦā§, āĻ¯āĻž āĻāĻāĻāĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻ¨ html āĻĒā§āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻ
āĻĨāĻŦāĻž error, feed, html, json, raw, xml, flash animation)āĨ¤ āĻāĻŋāĻ āĻŽāĻĄā§āĻ˛ āĻĨā§āĻā§ āĻĄāĻžāĻāĻžāĻā§āĻ˛ā§āĻā§ āĻ¤ā§āĻ˛ā§ āĻāĻ¨ā§ āĻāĻāĻāĻž view-āĻāĻ° āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĢā§āĻ˛ā§ āĻĻā§āĻāĻžā§āĨ¤ āĻāĻāĻāĻŋ āĻāĻŋāĻā§ā§āĻ° āĻāĻāĻžāĻ§āĻŋāĻ āĻ˛ā§āĻāĻāĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§āĻāĻž āĻāĻ¨ā§āĻā§āĻ°ā§āĻ°ā§āĻ˛āĻžāĻ° āĻĻā§āĻŦāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻŦā§āĨ¤ āĻāĻŽāĻ°āĻž āĻ¯āĻĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻĄāĻŋāĻāĻžāĻāĻ¨ā§āĻ° āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ āĻ¤āĻžāĻšāĻ˛ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻŋāĻ āĻ
āĻāĻļā§ āĻāĻžāĻ āĻāĻ°āĻ˛ā§āĻ āĻāĻ˛āĻŦā§āĨ¤
āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° (Controller):
āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ°ā§ āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻĄāĻā§āĻ˛āĻŋ āĻĨāĻžāĻāĻŦā§ āĻ¯āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž model āĻāĻŦāĻ view āĻāĻ° āĻ˛āĻāĻŋāĻāĻā§āĻ˛āĻŋ āĻāĻā§ āĻ
āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻŦā§āĨ¤ āĻ
āĻ°ā§āĻĨāĻžā§ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻŽāĻĄā§āĻ˛ āĻāĻ° āĻ
āĻŦāĻ¸ā§āĻĨāĻž āĻĻā§āĻāĻŦā§ āĻŦāĻž āĻ¸ā§āĻ āĻāĻ°āĻŦā§ (set and get the states of the models) āĻāĻŦāĻ āĻāĻŋāĻā§ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¸ā§āĻā§āĻ˛ā§ āĻĻā§āĻāĻžāĻŦā§āĨ¤ āĻ
āĻ¨ā§āĻ¯āĻāĻžāĻŦā§ āĻŦāĻ˛āĻž āĻ¯āĻžā§, āĻ¸āĻāĻ˛ āĻāĻāĻāĻžāĻ° āĻāĻ¨āĻĒā§āĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻžāĻ˛āĻžāĻ°ā§āĻ° āĻāĻžāĻā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšā§, āĻāĻ¨ā§āĻā§āĻ°ā§āĻžāĻ˛āĻžāĻ° āĻāĻ¨āĻĒā§āĻ āĻĒāĻžāĻŦāĻžāĻ° āĻĒāĻ° parameter āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ āĻŋā§ā§ āĻĻā§ā§ āĻŽāĻĄā§āĻ˛ā§āĻ° āĻāĻžāĻā§, āĻŽāĻĄā§āĻ˛ āĻ¸ā§āĻāĻžāĻā§ āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻāĻ°ā§ āĻāĻŋāĻā§ āĻĄāĻžāĻāĻž āĻ°āĻŋāĻāĻžāĻ°ā§āĻŖ āĻāĻ°ā§, āĻāĻŦāĻžāĻ° āĻ¸ā§āĻ āĻĄāĻžāĻāĻžāĻā§ āĻāĻ¨ā§āĻā§āĻ°ā§āĻžāĻ˛āĻžāĻ° āĻāĻŦāĻžāĻ° āĻĒāĻžāĻ āĻŋā§ā§ āĻĻā§ā§ āĻāĻŋāĻ āĻāĻ° āĻāĻžāĻā§āĨ¤ āĻāĻŋāĻ āĻ¤āĻāĻ¨ āĻĄāĻžāĻāĻž āĻā§āĻ˛ā§āĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§āĨ¤
āĻŽāĻĄā§āĻ˛ āĻāĻŋāĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
- Wikipedia-Modelâviewâcontroller
- The Model-View-Controller (MVC) Design Pattern for PHP By Tony Marston
- O’reilly-Understanding MVC in PHP
- āĻā§ā§āĻŦāĻā§āĻāĻŦāĻŋāĻĄāĻŋ-āĻŽāĻĄā§āĻ˛ āĻāĻŋāĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻŋāĻāĻā§āĻ°āĻŋā§āĻžāĻ˛
āĻ˛āĻŋāĻāĻāĻā§āĻ˛ā§ āĻĻā§āĻāĻ¤ā§ āĻ¨āĻž āĻāĻžāĻāĻ˛ā§āĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨ā§āĻāĨ¤ āĻāĻ āĻāĻŋāĻāĻā§āĻ°āĻŋā§āĻžāĻ˛ā§āĻ āĻ¯āĻāĻ¨ āĻ¯ā§āĻāĻž āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻĢāĻ˛ā§ āĻāĻŋāĻāĻā§āĻ°āĻŋā§āĻžāĻ˛ āĻ¸āĻŋāĻ°āĻŋāĻā§āĻ° āĻļā§āĻˇā§ āĻāĻŽāĻ¨āĻŋāĻ¤ā§āĻ MVC āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ§āĻžāĻ°āĻŖāĻž āĻ¤ā§āĻ°āĻŋ āĻšā§ā§ āĻ¯āĻžāĻŦā§āĨ¤
MVC āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĢā§āĻ°ā§āĻŽāĻā§āĻžāĻ°ā§āĻā§āĻ° āĻŽāĻ¤ āĻā§āĻŽāĻ˛āĻž āĻĢā§āĻ°ā§āĻŽāĻā§āĻžāĻ°ā§āĻā§āĻ°āĻ āĻŽāĻĄā§āĻ˛ āĻāĻŋāĻ āĻāĻŦāĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛āĻžāĻĻāĻž abstract āĻā§āĻ˛āĻžāĻ¸ āĻāĻā§āĨ¤ āĻā§āĻŽāĻ˛āĻžāĻ¤ā§ MVC āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻāĻŽāĻĒā§āĻ˛āĻŋāĻŽā§āĻ¨ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ JModel, JView āĻāĻŦāĻ JController āĻ¨āĻžāĻŽā§ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšā§ā§āĻā§āĨ¤
āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻ°āĻž āĻāĻā§āĻ° āĻāĻŋāĻāĻā§āĻ°āĻŋā§āĻžāĻ˛ā§āĻ° āĻā§āĻĄ āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻžāĻā§ āĻ˛ā§āĻā§ āĻĒā§āĻŋāĨ¤
āĻ¸āĻžāĻāĻ āĻĒāĻžāĻ°ā§āĻā§ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻ¸ā§āĻ āĻāĻ°āĻž
āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻĢāĻžāĻāĻ˛āĨ¤ āĻāĻ āĻĢāĻžāĻāĻ˛ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ˛āĻžāĻāĻ¨āĻā§āĻ˛ā§ āĻ¯ā§āĻ āĻāĻ°āĻŋ:
<?php // No direct access to this file defined('_JEXEC') or die('Restricted access'); // import joomla controller library jimport('joomla.application.component.controller'); // Get an instance of the controller prefixed by Team $controller = JController::getInstance('Team'); // Perform the Request task $input = JFactory::getApplication()->input; $controller->execute($input->getCmd('task')); // Redirect if set by the controller $controller->redirect();
āĻāĻāĻžāĻ¨ā§ JController āĻā§āĻ˛āĻžāĻ¸ā§āĻ° getInstance āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻŽā§āĻĨāĻĄ āĻ¨āĻ¤ā§āĻ¨ āĻāĻāĻāĻž āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤ getInstance() āĻāĻ° āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° ‘Team’ āĻĻā§āĻā§āĻžāĻ° āĻĢāĻ˛ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻĄā§ āĻāĻāĻŋ TeamController āĻ¨āĻžāĻŽā§ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻ¸āĻā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻ¤ā§āĻ°āĻŋ (instantiate) āĻšāĻŦā§āĨ¤ āĻā§āĻŽāĻ˛āĻž TeamController āĻ¨āĻžāĻŽā§āĻ° āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻŦāĻ°ā§āĻ¨āĻ¨āĻž (declaration) controller.php āĻ¨āĻžāĻŽā§āĻ° āĻĢāĻžāĻāĻ˛ā§ āĻā§āĻāĻŦā§āĨ¤ āĻāĻāĻž āĻā§āĻŽāĻ˛āĻžāĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻŦāĻŋāĻšā§āĻŦāĻŋā§āĻžāĻ°āĨ¤
āĻāĻāĻ¨ āĻāĻŽāĻ°āĻž controller.php āĻ¨āĻžāĻŽā§ āĻ¨āĻ¤ā§āĻ¨ āĻāĻāĻāĻž āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ TeamController āĻā§āĻ˛āĻžāĻ¸ āĻā§āĻˇāĻ¨āĻž (declaration) āĻāĻ°āĻŦā§āĨ¤
<?php // No direct access to this file defined('_JEXEC') or die('Restricted access'); // import Joomla controller library jimport('joomla.application.component.controller'); /** * Team Component Controller */ class TeamController extends JController { }
āĻ¯ā§āĻšā§āĻ¤ā§ request variables-āĻ āĻ¨āĻ¤ā§āĻ¨ āĻāĻŋāĻā§ āĻ¯ā§āĻ āĻāĻ°āĻž āĻšā§āĻ¨āĻŋ āĻ¤āĻžāĻ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻāĻāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻžāĻ¸ā§āĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻāĻ°āĻŦā§, āĻ¯āĻž āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻŋāĻāĻā§āĻ āĻĻā§āĻāĻžāĻŦā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ āĻ°ā§āĻā§ âTeamâ āĻšāĻŦā§ āĻāĻŋāĻā§ā§āĻ° āĻ¨āĻžāĻŽāĨ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŦā§ āĻāĻŋāĻāĻžāĻŦā§ display() āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¨āĻ¤ā§āĻ¨ āĻāĻŋāĻ āĻĻā§āĻāĻžāĻ¨ā§ āĻ¯āĻžā§āĨ¤
āĻ¸āĻžāĻāĻ āĻĒāĻžāĻ°ā§āĻā§ āĻāĻŋāĻ āĻ¯ā§āĻ āĻāĻ°āĻž
āĻ¯āĻāĻ¨ JController āĻāĻāĻāĻž āĻāĻŋāĻ āĻĻā§āĻāĻžāĻ¤ā§ āĻāĻžā§ āĻ¤āĻāĻ¨ āĻ¸ā§ com_[component_name]/views/[name_of_view]/folder āĻāĻ° āĻāĻŋāĻ¤āĻ° āĻāĻŋāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻā§āĻ āĻāĻ°ā§āĨ¤āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻāĻāĻ¨ site/views/team āĻĢā§āĻ˛ā§āĻĄāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻā§ āĻĢāĻžāĻāĻ˛ āĻĢā§āĻ˛ā§āĻĄāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻŦāĨ¤ āĻĒā§āĻ°āĻĨāĻŽā§āĻ..
<?php // No direct access to this file defined('_JEXEC') or die('Restricted access'); // import Joomla view library jimport('joomla.application.component.view'); /** * HTML View class for the Team Component */ class TeamViewTeam extends JView { // Overwriting JView display method function display($tpl = null) { // Assign data to the view $this->name = 'Lorem Ipsum'; $this->designation = 'Junior Web Developer'; $this->biography = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Curabitur dui ligula, dapibus in ultricies a, fringilla ut lorem. Sed ante elit, porttitor at egestas at, tempus mollis risus. Nulla at accumsan neque..............'; // Display the view parent::display($tpl); } }
JView āĻā§āĻ˛āĻžāĻ¸ā§āĻ° display() āĻŽā§āĻĨāĻĄ JController āĻā§āĻ˛āĻžāĻ¸ā§āĻ° display āĻāĻžāĻ¸ā§āĻ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ˛ āĻšā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻ āĻŽā§āĻĨāĻĄ tmpl/default.php āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĄāĻžāĻāĻž āĻĻā§āĻāĻžāĻŦā§ (āĻ¯ā§āĻšā§āĻ¤ā§ $tpl = null)āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻŽāĻ°āĻž āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻĢā§āĻ˛āĻŋāĨ¤
āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ° āĻĻāĻŋāĻā§ āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°āĻ˛ā§ āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŦ āĻāĻāĻžāĻ¨ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĄāĻžāĻāĻžāĻā§āĻ˛ā§āĻā§ āĻā§āĻ¯āĻžāĻ°āĻŋā§ā§āĻŦāĻ˛ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ html āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻāĻā§ āĻāĻ°āĻžāĨ¤ āĻāĻ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻĢāĻžāĻāĻ˛ āĻ¯ā§āĻšā§āĻ¤ā§ JView āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻ¨āĻā§āĻ˛ā§āĻĄā§āĻĄ, āĻ¸ā§āĻšā§āĻ¤ā§ āĻāĻāĻžāĻ¨ā§ $this TeamViewTeam āĻā§ āĻ°ā§āĻĢāĻžāĻ° āĻāĻ°ā§āĨ¤
<?php // No direct access to this file defined('_JEXEC') or die('Restricted access'); ?> <h1><?php echo $this->name ?></h1> <h2><?php echo $this->designation ?></h2> <p><?php echo $this->biography ?></p>
āĻ¨āĻ¤ā§āĻ¨ āĻ¯ā§āĻ¸āĻāĻ˛ āĻĢāĻžāĻāĻ˛ āĻ āĻĢā§āĻ˛ā§āĻĄāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§ āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ helloworld.xml āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ° āĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŋāĨ¤ āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ 0.0.2 āĻ˛āĻŋāĻāĻŋāĨ¤
<?xml version="1.0" encoding="utf-8"?> <extension type="component" version="1.6.0" method="upgrade"> <name>Team</name> <!-- The following elements are optional and free of formatting conttraints --> <creationDate>December 2012</creationDate> <author>Shamim Reza</author> <authorEmail>shamim@localhost</authorEmail> <authorUrl>http://localhost</authorUrl> <copyright>Copyright Info</copyright> <license>License Info</license> <!-- The version string is recorded in the components table --> <version>0.0.2</version> <!-- The description is optional and defaults to the name --> <description>This Component will manage your team ...</description> <update> <!-- Runs on update; New in 1.6 --> <schemas> <schemapath type="mysql">sql/updates/mysql</schemapath> </schemas> </update> <!-- Site Main File Copy Section --> <!-- Note the folder attribute: This attribute describes the folder to copy FROM in the package to install therefore files copied in this section are copied from /site/ in the package --> <files folder="site"> <filename>index.html</filename> <filename>team.php</filename> <filename>controller.php</filename> <folder>views</folder> </files> <administration> <!-- Administration Menu Section --> <menu>The Team</menu> <!-- Administration Main File Copy Section --> <!-- Note the folder attribute: This attribute describes the folder to copy FROM in the package to install therefore files copied in this section are copied from /admin/ in the package --> <files folder="admin"> <!-- Admin Main File Copy Section --> <filename>index.html</filename> <filename>team.php</filename> <!-- SQL files section --> <folder>sql</folder> </files> </administration> </extension>
āĻāĻ¨ā§āĻ¸āĻāĻ˛ āĻāĻ°ā§ āĻā§āĻŽāĻ˛āĻž āĻāĻŽā§āĻĒā§āĻ¨ā§āĻ¨ā§āĻ āĻāĻŋāĻāĻā§āĻ°āĻŋā§āĻžāĻ˛ (ā§Ļā§§) āĻāĻ° āĻ¨āĻŋā§āĻŽā§ āĻāĻāĻāĻĒā§āĻ āĻĻā§āĻāĻŋāĨ¤ āĻāĻāĻ āĻāĻāĻāĻĒā§āĻ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ˛ā§āĻ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻ°āĻž āĻāĻŋāĻ āĻ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻĒā§āĻ āĻĒā§ā§ā§āĻāĻŋāĨ¤
āĻāĻ¨ā§āĻ¸āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻĒ (.zip) āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ
Folder Hierarchy
File List
- com_team\team.xml
- com_team\admin\index.html
- com_team\admin\team.php
- com_team\admin\sql\index.html
- com_team\admin\sql\updates\index.html
- com_team\admin\sql\updates\mysql.0.1.sql
- com_team\admin\sql\updates\mysql\index.html
- com_team\site\controller.php
- com_team\site\index.html
- com_team\site\team.php
- com_team\site\views\team\index.html
- com_team\site\views\team\view.html.php
- com_team\site\views\team\tmpl\default.php
- com_team\site\views\team\tmpl\index.html
āĻāĻĒāĻ°ā§āĻ° āĻ¸āĻŦ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛ā§ āĻ¨āĻŋā§ā§ āĻāĻāĻāĻŋ āĻāĻŽāĻĒā§āĻ°ā§āĻ¸āĻĄ .zip āĻĢā§āĻ˛ā§āĻĄāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻ āĻĨāĻŦāĻž āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĄāĻžāĻāĻ¨āĻ˛ā§āĻĄ āĻāĻ°ā§ Joomla! extension manager āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ¨ā§āĻ¸āĻāĻ˛/āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻŋāĨ¤