PHP HaFr Install

From HaFrWiki
Jump to: navigation, search

The PHP-Web-Start is a Website-script to Install a HaFr Website.
The Web-Start is based on many website build by me and enables the best-practices of the website when building a brand new website.


  1. Based on PHP, JavaScript, jQuery and jQuery UI, AJAX, Bootstrap and Bootgrid.
  2. Based on MySQL Database.
  3. Developed for MAMP and Apache Webserver.
  4. Uses Lazy Loading for forms.
  5. Uses REST for (Help)-texts.
  6. Uses Responsive design
  7. Uses login/logout by the Login-app.
    • Common (Generic) login (Cookies with RememberMe)
    • Cookies based on the Cookie-Expired method.
  8. Uses RBAC (Role Base Access Control).
  9. Has a Menu with Home, Some-app-specific-tabs, Preferences, Admin, Help (see also RBAC).
  10. Uses the Multi-Language support which implements the method _h().
  11. Version Control Git and serviced by GitLab [1] [2].
    • Uses Atlassian SourceTree.

Lazy Loading

Normally when a user opens a webpage, the entire page’s contents are downloaded and rendered in a single go [3].
While this allows the browser to cache the web page, there’s no guarantee that the user will actually view all of the downloaded content.

For example, If an entire photo gallery is downloaded but the user leaves after only viewing the first image, then the result is wasted memory and bandwidth.

Instead of bulk loading all of the content when the page is accessed, content can be loaded when the user accesses a part of the page that requires it.
With lazy loading, pages are created with placeholder content which is only replaced with actual content when the user needs it.

Benefits of Lazy Loading

  1. Lazy loading strikes a balance between optimizing content delivery and streamlining the end user’s experience.
  2. Users connect to content faster, since only a portion of the website needs to be downloaded when a user first opens it.
  3. Businesses see higher customer retention as content is continuously fed to the user, reducing the chances the user will leave the website.
  4. Businesses see lower resource costs since content is only delivered when the user needs it, rather than all at once.

Adding lazy loading can make a website load faster, save bandwidth, and provide a truly uninterrupted browsing session.
Almost half of all users who visit a website view only a single page.
By continuously adding new content as the user scrolls, lazy loading can make that single view really count.


REST, REpresentational State Transfer, is an architectural style for providing standards between computer systems on the web, making it easier for systems to communicate with each other [4].
REST-compliant systems, often called RESTful systems, are characterized by how they are stateless and separate the concerns of client and server.
We will go into what these terms mean and why they are beneficial characteristics for services on the Web.

REST is in fact an implementation of lazy loading. The difference is that the returning texts are not interactive (except for the FAQ), while forms have to be added explicitely to the DOM-tree.

See also




  1. GitLab, Homepage
  2. GitLab, Simple words for GitLab newbies
  3. Blog StackPath, What's Lazy-Loading
  4. Code Academy, What's REST