MVC and Bootstrap 4 (basic intro to page)

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec quam felis,

Learn more

MVC (MVWathever) CRUD data flow
in "Msg share" module J:\awww\www\fwphp\glomodul4\msg_share\index.php (users messages or events)

(1) Module controller classs Home_C (which extends abstract class Controller) instantiates $viewmodel = new Home_M(); and displays view page so:
$this->includeView($viewmodel->Index()); //param is dbrows or only return;

So this is really M->C->V data flow, but controller does not know about model data (view knows). LINK TO CONTROLLER CLASS METHOD IN VIEW has info which model method to call, so CONTROLLER is only glue (whatever) for V and M.

(2) View page eg J:\awww\www\fwphp\glomodul4\event\eventpge_lst.php has LINK TO Event_C CONTROLLER CLASS (event), METHOD (add) :
href="<?=$module_url.QS?>event/add">Share URL (Create row).
where $module_url = $this->module_arr['module_url'] ;

(3) Read table : PAGINATED RECORD BLOCK STRING CREATED BY TABLE MODEL CLASS METHOD eg get_paginated_block() called by ... and puts it in template variable not knowing what get_paginated_block() does.


We also can use view class to call model class method, which is same thing and is "pure" M->V data flow (I tested this but do not use it). It seems to me that view class is overkill (till somebody prove oposite). View scripts are simple regarding data & code flow.

See image #2 below.

About MVC

See image #2 below and MVC (MVWathever) CRUD data flow above.

MVC M->V data flow
See also background image.
About BootStrap
  • NavBar
  • Responsive Image
  • BootStrap Grid
  • BootStrap Buttons

This is footer text of section about. Multiple view submodules for different display environments are not needed with BootStrap - see background image.

Featured
MVC M->V data flow
M->V data flow is original idea.
Buy #1
Featured
MVC M->C->V data flow
Some believe M->C->V data flow is much better than M->V data flow, I think it is same thing, important is to achieve simplest, fastest code and controller should not know about data, it shoud join (glue) M and V. Consequence is : M is largest and most complicated MVC part, C is smallest and simplest, V is simple but large routine programming. V sends its command to M through C or directly.
Buy #2
Featured
Product #3
Amet, consectetuer adipiscing.
Buy #3
Featured
Product #4
Amet, consectetuer adipiscing.
Buy #4
/srv/disk16/3266814/www/phporacle.eu5.net/fwphp/glomodul/z_examples/01_PHP_bootstrap/bootstrap/inc_hdr_ftr.php, lin=34  *** ftr_pge  SAYS ***
INPUT: $module_arr['module_path']=/srv/disk16/3266814/www/phporacle.eu5.net/fwphp/glomodul/z_examples/01_PHP_bootstrap/bootstrap/
INPUT: $module_arr['wsroot_path']=/srv/disk16/3266814/www/phporacle.eu5.net/
From $_SERVER['HTTPS'] and $_SERVER['HTTP_HOST'] : $module_arr['wsroot_url']=http://phporacle.eu5.net/
From $_SERVER['REQUEST_URI'] : $module_arr['module_relpath_requested']=fwphp/www/?b_tmplts_01help
INPUT : $module_arr['wsroot_url'] . 'fwphp/www5/' $module_arr['site_url']=http://phporacle.eu5.net/fwphp/www5/
From module_path and wsroot_path : $module_arr['module_relpath']=fwphp/glomodul/z_examples/01_PHP_bootstrap/bootstrap
From wsroot_url and module_relpath : $module_arr['module_url']=http://phporacle.eu5.net/fwphp/glomodul/z_examples/01_PHP_bootstrap/bootstrap/