Developing a component frontend update function

Developing a component frontend update function

This is a multiple-article series of tutorials on how to develop a Component for frontend editing of private data by users. The tutorial also describes how to upload and download data.

Begin with the Introduction, and navigate the articles in this series by using the navigation button at the bottom or the box to the right (the Articles in this series).

1 Introduction

Joomla in the first place is a Content Management System for a website with articles, blogs, forums etc. This serves well for providing or sharing public information.

When the site is targeting at a rather distinct group of users like clients or members, it is often useful to enable users to login to the system to store and retrieve personal data from the database. A typical example might be an address book.

The backend of Joomla features quite some functionality to search and edit database records for administrative purposes. There are also many extensions with such functionality, so Joomla is clearly capable of doing a decent job in this respect.

This tutorial aims to provide a guideline for creating a frontend component yourself for users to access and enter private data on the server of your website, in case the available extensions do not satisfy your needs. The tutorial starts more or less where the HelloWorld introductory tutorial of the Joomla Documentation site ends.

1.1 Documentation and source files for this tutorial

1.2 Starting point

This guide continues from the tutorial 'Developing an MVC Component' (aka the 'Hello World' tutorial) from this site: J3.x:Developing an MVC Component .

The starting point for the source files is: github.com/scionescire/Joomla-3.2-HelloWorld-Component-step-15 .

1.3 Prerequisites

For this tutorial it is assumed that you have a recent Joomla 3.x version properly setup at a server, including a suitable version of PHP and a database. Further it is assumed that you have access to the server, both to the files and the database.

For my exercises I use Joomla 3.5 on a local Fedora 23 system with PHP 5.6.19, MariaDB v and phpAdmin v4.5.5. So this tutorial will refer to 'localhost' as URL for the website, and /var/www/html as root folder for the Joomla website.

This tutorial assumes that you have a good understanding of the HelloWorld tutorial. As the starting point for that source is step 15, the present tutorial also starts with sequence number 15 to align with the preceding one.

1.4 Disclaimer

I am quite new to Joomla and found it hard to find the proper development information. In this guideline I wrote down my findings as help for others looking for the same information. I am not an expert in Joomla, so can certainly not state that the guideline is free from errors.