The best way to change the appearance of EasyTables, rows or columns is to use the custom CSS overrides file of your template (all the good template libraries have them) and target the EasyTable(s) specifically using the built-in CSS ID's and classes in EasyTable.

So, first things you need to define what you want to change. Do you want to change the color of:

  1. All links in all the EasyTables on your site?
  2. All the links in a single EasyTable
  3. Just the links in one column of a single EasyTable?

Once you have that, using the CSS ID's and classes described in this FAQ you can do something like this:

1. If you want to change all links in all EasyTables you can add this to your templates custom CSS file:

#et_table_page a {
    color: red;

2. For all links in a single table you can use the table alias:

#table_alias a {
    color: red;

So for a table with an alias of firefly with forest green links, the example above would be:

#firefly a {
    color: ForestGreen;

3. For the links in a specific column of a specific table the CSS definition needs to include the column class as part of the selector. This is similar to the FAQ on changing a column width using CSS. So, using our Firefly table example we can make all the Wikipedia column links red by adding the following CSS:

#firefly td.colfld.wikipedia a {
      color: red;

If you look at the demo site with the Firefly table and use the "Inspect Element" command found in most browsers you will see the CSS discussed above is being loaded via a easytable.css file.


Adding a Print Button

Occassionally it might be useful to print a table, this FAQ shows how to create a Joomla style print icon for your users rather than them just selecting the Print menu.

EasyTable doesn't have a print button yet, maybe in a future version.

In the mean time you can simulate one quite easily. All the print button does in Joomla! is call the current page with "tmpl=component" appended to the URL.

Based on this I added a link to the standard Joomla print icon into the description field of the US Presidents table on the demo website. The html is pretty basic:

<span id="print-button">
  <a href="/easytable-pro-table-list/us-presidents.html?tmpl=component" target="_blank">
    <img src="/media/system/images/printButton . png" alt="Print this page" />

Please note there is a space either side of the period in the printButton.png file name to prevent our CDN plugin from processing this example code.

To help with layout of the button, I also added this CSS, to the personal.css file of the template:

#et_table_page #print-button
    border:solid thin silver;

Obviously for your tables you would replace the demo URL (/easytable-pro-table-list/us-presidents.html) with the path to your table.

This works in similar way to the URL filtering already in the US Presidents table, so it will be visible anywhere the table is displayed with it's "Show description" set to Yes.

Search Engines

EasyTable Pro! doesn't do anything to stop search engine bots from browsing the tables.

 Search engine bots look for all links in a page and then follow those they're allowed to, i.e. they will follow any link that requires a user login, is in robots.txt or has a nofollow in the rel attribute.

The only things on your Joomla site that affect where a search bot will look are a robots.txt file in your website or SEF extensions. SEF extensions often add a robots.txt file and use techniques that manipulate the rel nofollow attribute on links — we have previously had people mention issues with certain popular SEF tools that were adding nofollow rels to lots of links (not just in EasyTable tables).

There can also be problems if your Google Webmaster Tools (GWT) has out of date sitemaps.

The other thing to remember is that Google updates do not happen instantaneously and old links may hang around, again you can check this by using a site specific search or looking at your the site in GWT.

If you do a site specific search on Google you can see what Google has indexed on your website, for example if I do a Google search for results on our demo site searching for Firefly (the name of a sample EasyTable) I get pages of records back specifically about that table. If I do a site specific Google search for "Serenity"  one of the records in the Firefly table, the first result is the detail view of the "Serenity" record.

If Google isn't indexing your tables then the first thing to check is any robots.txt files and to see if a SEF extension is adding nofollow rels to your links. The only nofollow rels that are valid are on links to external website (which is the correct behaviour).

 So, to recap, if you're not seeing the right results in Google from a site specific search:

  1. Check your robots.txt
  2. Check any SEF extensions aren't putting nofollow rels on your record detail links.
  3. Check Google Webmaster Tools account for
    1. old links
    2. out-of-date sitemaps

Successful install but Red X's appear?


After the installation of EasyTable Pro two or more steps may have Red X's rather than Green ticks next to them — as shown in the screenshot below.

These Red X's appear even though the message "Installing component was successful." is displayed across the top of the page and "Post installation check... OK" appears at the bottom of the installation process.

Installed Successfully


As explained in the "Installing/Upgrading to EasyTable Pro 1.1.0" article this is OK.

During the installation of EasyTable Pro, if the installer script detects that a previous version was installed it will switch to the more comprehesive updating path, which includes a stage that cleans up some legacy files. In the example above steps 12 and 13 are looking for files relating to an optional view that was used in EasyTable Pro 1.0 (this view is now integrated in 1.1 and is known as the Ranked View).

This is OK, as step 14 specifies "No legacy files found in file clean up" is OK and not a situation to worry about.

Can I change/translate labels in...

Yes, this is a standard feature of Joomla! 2.5 for extensions (compents, plugins, modules and even templates)… if they are written correctly. You can change the wording of labels etc. using: Extensions->Language Manager->Overrides 

This will allow you to modify most labels used in the Front-end and back.

When you click the New button, you will see an interace like this one:


On the right hand side can see a "Search" field with a Radio button underneath it that lets you select "Value" or "Contstant" — to change any label just search on the words of the label.

For example if you wanted to change the label "Last Updated:" in EasyTable Pro! you would get these search results:

Language Override Search

When you see the constant in the Search Results list, click on it to fill out the Language Constant and Text fields in the Create a New Override box to the left. Then you can simply edit the Text box to suite your requirements.

A problem with plugins…

However, for plugins the search process described above doesn't work (at least in Joomla! 2.5.x), for constants or values. In Joomla! search integration with Joomla's builtin search is done via a plugin — so to modify search labels etc you will need a way around this problem.

The easiest solution, means you need to know the Language Constant, this is the key for each string that you want to change. The Language Constants usually start with com_ or plg_ or mod_ followed by the name of the component, plugin or module. e.g. For the EasyTable Pro component and it search plugin the keys start with:


Here's a standard search output from Joomla! that found some hits in EasyTable Pro! for "Gerald", notice the difference between results where this is only one result in a table and multiple results.

Easytable Pro! Search Result

To find out what the keys are for a plugin are the simplest way is to look inside it's language files (you can see the contents of the 1.1.0 version of the EasyTable Pro search plugin below in the next section).

The search plugin has two language files ( you will find them here: /plugins/search/easytablepro/language/en-GB/).

They language files for the Search plugin are called:


The second language file, that ends with .sys.ini holds the labels e.t.c. that you see in the Plugin Manager in the back-end, so, isn't generally isn't the file people want to modify. With plugins it's generally the front-end text people want to modify or translate.

You can see the contents of these files below, have a look. If you want to override one of these labels simply type the relevant constant into the Language Constant field as shown below:

Overriding EasyTable Search Plugin Singular Constant

A thing, to note from looking at the language file for the EasyTable Pro Search plugin, it is common for there to be two similar strings for search results. There is usually a string for a single result being returned and another for multiple results being returned, in this case:


You will generally want to create an override for both, e.g. here's the override I created for multiple records that matched:

Overriding EasyTable Pro! Search Plugin Plural

Once the changes have been saved you'll be able to see the result in the front-end, in our example here that would change the search output to look like this:

 Easytable Pro! Search Result with Language override.

Creating a translation file

Remember — always use a backup and never edit your original files (because if you don't break the file, all of your changes will be lost the minute you install a new version...)

To create a translation for your preferred language for the EasyTable Pro! component or it's Search Plugin you can create a language specific translation file. (The specification of Joomla! language files can be read here.)

Example Translation

As an example, we'll use the EasyTable Pro! Search Plugin's language files (as they're nice and short).

To create a translation file, start by finding the language code for your language — the official list is here http://www.loc.gov/standards/iso639-2/php/code_list.php — find your languages 2 letter code.

The next step is creating a folder for your language, e.g. for a French translation:


The next step is to copy the existing English language files into your new language folder and renaming the copies to match your language. e.g. in /plugins/search/easytablepro/language/fr-FR you would have:


The content of the English .ini and .sys.ini files looked like this for version 1.1.0 

# version 1.1
# author Craig Phillips
# copyright (C) 2012 Craig Phillips Pty Ltd. All rights reserved.
# license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
# version 1.1.0
# author Craig Phillips
# copyright (C) 2012 Craig Phillips Pty ltd. All rights reserved.
# license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
PLG_SEARCH_EASYTABLE_ALLOWS_SEARCHING_OF_EASYTABLE_PRO_TABLES="Integrates EasyTable Pro tables with Joomla!'s search function."

Now to convert these to your preferred language (in our example French) you simply change the value next to each Language Constant (i.e. the text inside the double quotes "this bit").

So, for our fr-FR.com_easytablepro.ini the file will look like this after the conversion:

# version 1.1
# author Craig Phillips
# copyright (C) 2012 Craig Phillips Pty Ltd. All rights reserved.
# license http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
PLG_SEARCH_EASYTABLE_FOUND_THESE_RECORDS_THAT_MATCH="Trouvé ces enregistrements correspondant à: "
PLG_SEARCH_EASYTABLE_FOUND_A_RECORD_THAT_MATCHES="J'ai trouvé un dossier qui correspond à: "

As you can see, apart from the file name the only section I've had to change are the specific sentences, the constants, double quotes and everything else has remained the same.


Known Products that don't work as linked tables

EasyTable Pro! provides a means to display the content of database tables not created by EasyTable Pro!. This "linked" external table must be visible to Joomla! for the table to appear in the selection list.

However, a table may appear in the list that can't be used reliable or in some cases at all. This is because of the basic structure required to make "logical table" — sometimes the structure of "linked" table doesn't contain a simple primary key (i.e. a single column that is used to index each record in the table).

EasyTable Pro! can't work without a a primary key column, so if the linked table doesn't provide simple primary key column it is probably using either foriegn keys or compound keys. Unfortunately as database design is almost infinitely flexible there isn't a standardised way for EasyTable Pro! to determine the correct keys to use and create a virtual key. (Temporary keys have to be virtual to as EasyTable Pro! doesn't modify linked tables).

The following products have been identified as not being compatible with EasyTable Pro!'s "linked" tables feature: 

Date Added
1 VirtueMart 1.x 19/11/10 Tables are fractured and don't allow for useful display - reported by PiersNegwin.
2 JomSocial All 1/5/11 Foreign keys are used in several tables - reported by DaveAttwood
3 RokGallery All 12/6/12 Foreign and compound keys, hashed values used throughout - identified by CPPL.

Locked Table

In EasyTable Pro! it is possible for a table to be locked by another user — in the manager view this will be noticeable as a padlock icon will be displayed next to the name.

Locked Tables show a Padlock Icon next to them.

If the user has logged out of Joomla but left the table locked (i.e. they open the table but didn't use the Close/Save/Save & Close button to leave it) you can unlock the table using your Super Admin account. You can check the detail of who has a table checked out by hovering your cursor over the padlock icon to reveal the tooltip, as show below:

Locked Tables display a Tooltip of who by and when the table was locked.

If the table is Locked then you can either click on the lock icon (which will unlock it or in Joomla! parlance Check it in ) or use Joomla's standard maintenance menu option to check-in the table. Selecting Site->Maintenance->Global Check-in will show you a list of table that support check-in.

Global Checkin Menu

The one you're looking for is called something like #__easytables table (where the leading #_ is replaced with a random prefix for your particular Joomla! installation). In the screenshot below you can see the table dmc_easytables has one (1) table showing in the Items to Check-in column.

Global Checkin Screen

Simply click the check box next to the #__easytables table row and then click the "Check-in" button in the toolbar.

Remember: To do either of those things you will need to be logged into a Super Admin account.

Incompatible Extensions

This FAQ maintains a list of extensions that are incompatible with EasyTable/EasyTable Pro. In all reported cases the extension is incompatible because it changes the way core Joomla! functions work.


Extension Version Issue Suggestion Solution
SH404SEF All  Component over-rides the Joomla! core routing functions causing any component (including EasyTable and EasyStaging) that uses JRoute() to have broken links unless specifically supported by the component. Add EasyTable to the exclusion list so that SH404SEF doesn't try to rewrite the links.
ProjectFork  1.0.x ProjectFork modules break Javascript sorting in the front-end.   Upgrade to the latest version for your version of Joomla!

Show Detail view in a lightbox effect.

With EasyTable Pro's field options you can combine several fields to produce a custom URL for each record. There are lots of things you can do with URL's you may want a custom text for each click link or you may want to set a subject in an Email link, or you may want to have a large version of an image appear in a lightbox.

As we've already looked at how to acheive those, in this FAQ we'll take that a little bit further by displaying the Detail view of a row/record in a lightbox.

This example uses the JCE MediaBox from the popular JCE (Joomla Content Editor) to provide the lightbox pop-ups for the detail view.

First up make sure you have a current version of JCE and JCE MediaBox installed (don't forget to check the MediaBox plug-in is enabled).

This FAQ assumes you know about EasyTable Pro's field tokens, you may want to read this article about the basics of using field tokens for substitution functions.

To start with every table has a unique ID or number, you can find this in the EasyTable Editor (see the Table Info panel in the top right of the Editor screen, shown below).

EasyTable Pro - Editor Table Info PanelEasyTable Pro - Editor Table Info Panel

or the table list in the EasyTable Pro Manager (see the left most column):

EasyTable Pro - Manager - Table ID highlightedEasyTable Pro Manager - Table ID highlighted.

As you can see our US Presidents table has an ID of 123, remember this number - we'll need it soon.

For the purposes of this FAQ we're going to add our custom Detail link to the Presidency field (ie. which number President) additionally our table has fields with the following names and alias. ( I'm using the Presidency field as we already have a standard "Detail" link on the President field. )

Name Alias
President president
Presidency presidency

The other field that every table has is an automatic one created by EasyTable Pro called ID this is the unique index for each record in a table (Note: there is no settings row for the ID field in the EasyTable Editor, it used internally by EasyTable Pro and the database).

Some typical records might be:

ID Presidency President
3489 1 George Washington
3490 2 John Adams

Just the Details Mam!

There are a few more things we have to do here, first we have to get EasyTable Pro to return just the record/row. We can do this thanks to a feature of Joomla!'s MVC system, any component that implements the MVC properly can be called with an extra parameter on the URL.

Joomla! URL's are usually changed by Search Engine Friendly features to give you nice human readable results, however, underneath that they look more like this:


Thanks to Joomla!'s MVC mechanism (and EasyTable Pro implementing it properly) we can add this little snippet to our URL to get back the records detail view without all of the rest of surrounding template elements.


Using EasyTable Pro's tokens we will replace the record ID in the URL above with the #id# (this will automatically insert the right id for each record in the list view). The table ID (123 remember) is already in this URL but you will need to change it to the ID of your table on your website.

A View in A Box, Lightbox That Is!

So, we have to create a link to the detail view using all these elements. Using the example table and records to achieve this with EasyTable Pro you need to take several steps first:

  1. set the field "Presidency" to a type of "TEXT" (this prevents EasyTable Pro apply type specific formatting to the field).
  2. set the field options to the following:
    <a rel="presidents;width[640];height[960]" target="_blank" title="#president#" href="/index.php?option=com_easytablepro&view=easytablerecord&id=123&rid=#id#&tmpl=component" class="jcepopup">#presidency#</a>
  3. Notice the rel tag, like most lightbox systems it is used to convey addition parameters to the Javascript function. In our tag the first element sets the group name to "presidents", then, as should be obvious we set the width and height of the lightbox. You will want to adjust these to the needs of your table and website.
  4. The URL includes the reference to the table in the segment &id=123, the other values row/record ID, President and Presidency are all inserted by token replacement.

Now when EasyTable Pro renders the table any field tokens will be replaced by the values in those fields. With our example table this will produce the following HTML:

EasyTable Pro generated HTML In Browser Display
<a rel="presidents;width[640];height[960]" target="_blank" title="George Washington" href="http://j15ref.craigphillips.biz/index.php?option=com_easytablepro&amp;view=easytablerecord&amp;id=123&amp;rid=1&amp;tmpl=component" class="jcepopup">1<span class="jcemediabox-zoom-link"></span></a> 1*
<a rel="presidents;width[640];height[960]" target="_blank" title="John Adams" href="http://j15ref.craigphillips.biz/index.php?option=com_easytablepro&amp;view=easytablerecord&amp;id=123&amp;rid=2&amp;tmpl=component" class="jcepopup">2<span class="jcemediabox-zoom-link"></span></a> 2*

*Please note the examples in the table above are using the CSS from the template on the demo server.

Issues to consider!

  • As you're displaying the Detail view you may want to turn off the field you use to create the custom Detail link in the Detail view - you can see in the demo website we haven't done this and you can click on the Presidency link inside the lightbox view of the record.
  • You may want to turn of the Next/Previous Record links (we haven't and you can see the result).

Thats it. If you have any questions about EasyTable Pro and this FAQ just jump into the Subscribers Forum and ask away.

EasyTable Pro blank screen when creating/editing a table.


When using EasyTable Pro clicking on the "New" or "Edit" table buttons/links results in a white screen.

Possible Causes:

  1. Phoca PDF-> content plug-in
    1. version 1.0.3 has been found to delete the content of the a page a performing a preg_replace()
    2. on line 90 of this content plug-in the $bodysite variable is replaced with the contents of the preg_replace() without checking the result first.
    3. after this line the plug-in then calls Joomla!'s JResponse::setBody($bodySite) effectively erasing the page, again without checking.
  2. Check for poorly written plug-ins (Phoc PDF is not the first one to cause problems, looking at you Jumi...)
  3. Try disabling all none-standard plugins (via the Plug-in Manager) and see if EasyTable Pro works
  4. If it does you can re-enable plugins gradually and check EasyTable continues to work, eventually you'll find the culprit.
  5. Check EasyTable Pro's minimum requirements are met by your server.

Plug-ins for EasyTable Pro

Joomla! 1.5 supports several types of Plugins for extending or integrating new features amongst others are content and searching types.

Search Plugin

EasyTable Pro currently includes a search plugin the allows Joomla to search the contents of tables you have imported/created in EasyTable Pro.

Through this plugin EasyTable Pro will return result to the standard Joomla! search function for tables or fields that you have. You can read more about it here.

Content Plugin

Content Plugins allow you to embed content from other sources into Articles within Joomla. Most content plugins are dealing with a small or limited amount of data. When EasyTable was first designed it was aimed at handling table with hundreds or thousands of records covering multiple pages.

Including a table of this size into the body of an article wasn't considered practical for the 1.0 line of EasyTable Pro, so currently a content plugin doesn't exist.

We do intend to implement a content plugin but our design requires the tables to be re-implemented using AJAX techniques so that your users can search and page through the records without the page having to be refreshed. AJAX tables are scheduled for a version after the EasyTable Pro 1.1 release (which is the version supports the 1.7/2.5 versions of Joomla!).

You can read more about the development plans here.

Simple Filter

EasyTable Pro proved a simple filter that allows you to filter the contents of a field using one or more filter values.

On our demonstration website we have setup our US Presidents table to have a few simple filters on it, for example this filtered view of the table is set to show only records where the "party" field contains "democrat", similarly this view shows only the records where "party" field contains "Republican".

Simple Filter (party contains 'democrat')Simple Filter (party contains 'democrat')

Multiple Values

On our demonstration website you can also see an example where we have filtered the US Presidents table to show only the First and Last Presidents.

In this view of the table we want to display the first and last President. To do this we set the "Filter" Parameters by selecting the Field to Filter and Filter Type in Table Options as shown below:

Table Options  Default StateEasyTable Pro! 1.2.0 Table Options - Default State

In the Filter Value we type in the values we want to filter. Multiple Filter Values are separated using the pipe character "|" as the separator (it's usually found above the "\" key).

To set multiple filter values as used in our First & Last Presidents example set the Filter

Table Options - Standard Filter, multiple valuesStandard Filter with multiple values

Value to: George Washington|Barack Obama

Remember multiple Filter Values can be entered by separating the values with the pipe character.

Using template overrides with EasyTable Pro

EasyTable components are made using the Joomla MVC model and as such allow you to create template overrides for each of the views.

To show the corresponding line number in front of the row i.e. line 1 shows 1, line 2 shows 2 and so forth.

A template override for EasyTable Pro can be downloaded here. This override adds a calculated column number before (left most position) any other columns. It works off the paginated record set so will start at 1 and proceed up to the number of records in the set.

Just drop this in your websites template HTML overrides folder.

eg. if you're using JA-Purity drop the com_easytablepro folder into /templates/ja_purity/html

In the zip file you will find the following directory structure:


If your template doesn't have a html directory in it copy the html directory from the zip file in to the directory your template is in. eg /templates/yourTemplate/html

NB: Things to note!

  • this will affect every table using this template
  • if you use the front end Javascript based table sorting the number will move with the sort pattern selected.

Adding a pre-defined search button to a table URL (table filtering)

In addition to filtering a table via it's menu you can add an extra parameter to the end of the URL to your table. ( Note this is for links external to EasyTable Pro, it's handy for links in articles or map modules that allow you to set links for regions of the map or just simple image maps. )

Unlike filtering this acts like an initial search parameter and appears in the seach input box on the page. Just like a normal search the user can click "Reset" and reveal the rest of the records in the table. For this reason a table must have it's "Show Table Search" option set to "Yes"

The best way to understand this is to see it. The first link shows you the standard table with starting with the first 5 records.

Joomla! 1.5 and EasyTable Pro 1.0

Link to US Presidents table on our reference site: http://j15ref.craigphillips.biz/us-presidents.html

The next link is the same except it has etsearch=andrew added to the end of the URL:


Note the ? before the parameter this denotes the end of the URL and the beginning of parameters the web application can use.

Now if you're not using Joomla's SEF functions your initial URL might look like this:


(Please note for readability we've broken the URL over several lines - a URL doesn't have carriage returns in it.)

As this URL has parameters in it already


Note the & that proceeds our etsearch parameter, this is because it's not the first parameter after the URL, it's literraly say to the server "and" this parameter.

Joomla! 2.5 and EasyTable Pro 1.1+

Due to changes in both Joomla! 2.5 and EasyTable Pro 1.1 the syntax changes slightly. Specifically instead of et_search as the name of the search value we use filter_search.

So, the URL provided above will now look like this:


Using the description field you can create predefined search buttons for a table, like those on the demo site. In the case of the Presidents table it has some links defined that make use of the filter_search parameter and the templates existing CSS. The HTML of the US Presidents description looks like this:

<p>Presidents of the USA</p>

<ul class="pagenav">
<li class="pagenav-prev">
<a href="http://j16ref.craigphillips.biz/easytable-pro-table-list/us-presidents.html?filter_search=andrew">All the Andrew's</a></li>
<li class="pagenav-prev">
<a href="http://j16ref.craigphillips.biz/easytable-pro-table-list/us-presidents.html?filter_search=Democratic">All the Democrats</a></li>
<li class="pagenav-prev">
<a href="http://j16ref.craigphillips.biz/easytable-pro-table-list/us-presidents.html?filter_search=Republican">All the Republicans</a></li>
<li class="pagenav-prev">
<a href="http://j16ref.craigphillips.biz/easytable-pro-table-list/us-presidents.html?filter_search=John">All the Johns</a></li>

The Joomla! template already has defined the following pagenav related CSS:

#main ul.pagenav {
    list-style-type: none;
    padding: 0;
    overflow: hidden;
ul.pagenav li.pagenav-prev {
    float: left;
#main ul.pagenav li {
    line-height: 2em;

Then we added some CSS to specifically padd out the buttons:

* EasyTable Additions

#et_table_page div.et_description ul li
    padding: 10px;

Joomla! 2.5 and EasyTable Pro 1.1.5+

EasyTable Pro 1.1.5 introduced the "Search Results Only" view (SRO), i.e. no records are shown unless the user has provided a search criteria that matches some records. At the same time the syntax was expanded to support field/column being specified. It's easier to explain with an example.

Using our venerable US Presidents table again we create a version for use with the SRO view, in this version we tweeked the buttons setup above to allow us to search in specific columns/fields.

<ul class="pagenav">
<li class="pagenav-prev"><a href="/us-presidents/us-presidents-search-only.html?filter_search=president::andrew">All the Andrew's</a></li>
<li class="pagenav-prev"><a href="/us-presidents/us-presidents-search-only.html?filter_search=party::Democrat">All the Democrats</a></li>
<li class="pagenav-prev"><a href="/us-presidents/us-presidents-search-only.html?filter_search=party::Republican">All the Republicans</a></li>
<li><a href="/us-presidents/us-presidents-search-only.html?filter_search=president::John">All the Johns</a></li>

<li class="pagenav-prev"><a href="/us-presidents/us-presidents-search-only.html?filter_search=president::John">All the Johns</a></li>
<li class="pagenav-prev"><a href="/us-presidents/us-presidents-search-only.html?filter_search=home-state::virginia">All the Virginians</a></li>

So, for a column/field with a name of "Home State" and an alias of home-state, to specify a search in just the column we prefix the search term with the field alias like this:



No valid database connection...


View an EasyTable on the front-end of your website results in an error message being displayed in your templates Message area and the table still appears to work correctly. The text of the message will be similar to this:

No valid database connection Unknown column '' in 'field list' SQL=SELECT `id`,
 `` FROM xx_easytables_table_data_N order by `id` ASC LIMIT 0, 103


Of the two cases where this problem has been reported JoomFish was installed on the websites.

Upgrading JoomFish to the latest version fixes the problem.

Adding a tooltip to column headings


EasyTable Pro allows you to sort columns by clicking on the headings of a column.  Previously we have covered how to add CSS to your websites template css to show "indicator arrows" in the column headings. 

This FAQ takes it one step further by showing you how to turn on a Joomla Tooltip that pops up when your cursor moves over the column heading.

NB: This tip requires EasyTable Pro 1.0.0RC6 or later. You can see this working on the demo website.


1. Add the text of the tooltip to the field/column's Description field. You can put anything you like but in this example I've set a description of the sorting function.

Using the_Description_for_Table_Column

[ Notice the :: between the words Sorting and Click - this tells the Joomla Tooltip function that the first part ("Sorting") is the title of the tooltip and the rest is the body of the tooltip. ]

2. Check the result in the front end by reloading the table and moving the cursor over the column heading - if you've done everything correctly you should see something like this:

Column Tooltip_for_EasyTable_Pro

3. There is no step 3.

Adding a Field/Column to your table


Since version 0.9.0 EasyTable Pro has allowed the modification of the basic table structure for native* EasyTable Pro tables (see Modifying Table Structures ).

If you need to review those features please read the article linked above or review this annontated screenshot of the table modification interface.

Step by Step

1. Modify Structure Mode

Modify Structure IconIn the Table Editor screen you will see a button in the far right of the Joomla Toolbar called "Modify Structure" — when you click on this the interface elements that allow you to change the structure of your table will be revealed.

Why do we hide them? — Well first up they're generally not needed everyday. Secondly if you're not careful you could destroy a lot of work you've already put into your table — remember this interface allows you to change the actual structure of your table in the servers database.

2. Click the New Field button/link.

EasyTable Pro New Field Button

This will create a new row in the table editor showing a new "blank" field. As you can see in the image below — the new field is highlighted by a light green background which will stay until the field is either discarded or "Saved" to the database. A new field also has a temporary ID usually of the form '_nf_#' where the hash is replaced by the number of the new field (yes you can create multiple new fields at one time before saving).

3. Configure the New Field.

EasyTable Pro - New blank Field

A new field is essentially blank — it needs to be configured before you can save the table and keep your  new record. There are several things you must do to configure a field properly:

  1. Enter a Name for the field then press the TAB key. (This will cause EasyTable to automatically create a valid* matching unique alias for you).
  2. You will need to select whether or not it displays in the List and Detail views.
  3. You will need to toggle the Search flag if you want Joomla to search this field.

EasyTable Pro - Complete the new Field settings

4. Save/Apply your Changes

It's easy enough to forget but once you've made the changes you want to your new fields click the Save/Apply buttons to committ the changes to the table. Once you've done this you will notice that the light green background on your new field has disappeared and it temporary ID has been updated to a standard field ID. As show below:

EasyTable Pro - Completed New Field

Setting Column Width by CSS


Using CSS you can control the look of all aspects of a table created by the EasyTable Pro component — this FAQ lists CSS ID's and classes.

If you had a table with an alias of "sample-data" and a field with an alias of "column-2-image" you could create an entry in your templates CSS that sets the width.

#sample-data td.colfld.column-2-image {

width: 160px;

We would normally suggest putting it at the end of the template.css file.

Checking the CSS

To check if your CSS is being applied properly we recommend using either Firefox with the Firebug extension or Safari/Chrome's built in web kit inspector. Using these you can point to the element you expect the CSS to be affecting and right click and select "Inspect Element".

Menu Item Safari/Chrome Inspect Element Firefox + Firebug Inspect Element Menu Item

If your CSS is properly structured and matches the ID and classes of your table by clicking on the TD element in the inspector view you will see the associated CSS as shown below.

Safari/Chrome Webkit Inspector Firefox Firebug Inspector

Typical problems to look for when CSS doesn't attach to the element are: syntax errors, ID or class name errors or website/browser cache issues.

Joomla 2.5 Support

We are getting a few questions about when the components will work with Joomla 2.5, this is our current position and if it changes I'll update this FAQ.

EasyTable for J!

Sadly the free "EasyTable for J!" isn't well supported by the user base — even though we have litterally thousands of websites using the free version of the component there has been very little feedback on the Joomla Extension Directory and only 1 donation over the last 2 years. Feedback is important as without ratings and reviews new users don't get to see the component.

As a reference — the EasyTable for J! component in Feb 2012 made 173,560 version checks from approx. 153,000 unique IP's. Version checks are done once per session when the component is opened to add or modify a table. 

So, at this point I can't afford the time to upgrade it — if I get time in the future I will probably make a Joomla 1.6/1.7 2.5 installable version — like most people I have to focus on things that pay the bills.

To be clear if you like and use this component and you want to see a Joomla 2.5 version I suggest you vote for it on JED. This will increase it's exposure to other users and some of them may even like to use the Pro version.

EasyTable Pro

EasyTable Pro! has an upgrade to Joomla 2.5, it's called EasyTable Pro! 1.1.x

The 1.0.0 Release is final and will only receive bug fixes for current subscribers until Joomla! 1.5 reaches end of life (currently Joomla! have this marked for August 2012).

Aug. 2012: In line with the end of life for Joomla! 1.5, support for Joomla! 1.5 compatible versions is no longer available.

The key to seeing ongoing updates is of course users, and though we get people saying they love the Pro version nearly every day we've got only a few reviews on the JED. Compared to approx. 300 hundred copies paid for — apparently it's not good enough for people to spend a few seconds and vote for it — let alone write a review. On average each licensed copies appears to be running on approximately 60 different servers.

As a reference — the EasyTable Pro component in Feb 2012 made 15,977 version checks from approx. 12,300 unique IP's. Version checks are done once per session when the component is opened to add or modify a table.

With the latest versions we moved to a mechanism that uses the browsers cache and will only retrieve the version data when the browser expires the cache or the user does a forced refresh. This saw a dramatic drop in the hits on our server, thankfully, but we're still seeing about 3200 uniques IP's checking the version of EasyTable Pro each month.

Some people also seem to be happier to use versions they've downloaded from "free" websites. Recently this caused us an issue when a user of the "free" package blamed us for his site being hacked — that turned out to be a malicious version that was being distributed on the web.

Again if you're a happy user of the EasyTable Pro component may I suggest you vote for it on the JED.

Current as at 25th June 2012.

Hacked Version of EasyTable Pro


We have been made aware of a hacked version of EasyTable Pro 0.9.0 is circulating on various Russian websites that offer free software. The file can be identified by the following discrepancies from the real version.

Real Version Hacked Version
Filename 0.9.0-easytablepro.zip

unzip-first-easytablepro.zip or 


Size 164Kb (< 200Kb) > 1.9 Mb
Install Only installs on a PHP server Opening it apparently auto launches a malicious file called "delete.me"


If you have installed this hacked version on your server get profession IT help to uninstall it and determine if anything else has been added to your server. You may also want to check your personal computer that you downloaded the file on for a virus/trojan.

The only safe place to get our software is from our website at http://seepeoplesoftware.com.

Using field tokens to create a lightbox effect for images in EasyTable Pro

With EasyTable Pro's field options you can combine several fields to produce a custom URL for each record. There are lots of things you can do with URL's you may want a custom text for each click link or you may want to set a subject in an Email link, we've already looked at both of these so in this FAQ we'll take that a little bit further by combining it with another Joomla component.


When combined with the popular JCE (Joomla Content Editor) you can make use of the JCE MediaBox to provide advanced pop-ups for your images (or just about any other type of media). We're using JCE's MediaBox for this example because really JCE should be installed on every Joomla website.

First up make sure you have a current version of JCE and JCE MediaBox installed (don't forget to check the MediaBox plug-in is enable).

This FAQ assumes you know about EasyTable Pro's field tokens, you may want to read this article about the basics of using field tokens for substitution functions.

For the purposes of this FAQ we're assuming our table has fields with the following names and alias.

Name Alias
Portrait portrait
Thumbnail thumbnail
President president

Some typical records might be:

Portrait Thumbnail President
GeorgeWashington.jpg thmb_GeorgeWashington.jpg George Washington
JohnAdams.jpg thmb_JohnAdams.jpg John Adams

A Lightbox Effect

As we have a thumbnail image, a full sized portrait image and the name of a President you can create a thumbnail that is linked to the full sized portrait and has the correct Title text (most light box effects use the title text in the display of the larger image). Again as with most light box effects you can group media together so that you can navigate back and forth between multiple media elements of the same group — in most systems you do this by setting a "rel" value.

Using the example table and records to achieve this with EasyTable Pro you need to take several steps first:

  1. set the field "Thumbnail" to a type of "TEXT" (this prevents EasyTable Pro apply type specific formatting to the field).
  2. set the field options to the following:
<a rel="presidents" target="_blank" title="#president# portrait." href="/images/stories/USPresidents/#portrait#" class="jcepopup">
<img src="/images/stories/USPresidents/#thumbnail#" alt="Click for larger view."></a>

NB: the URL to the larger image is wrapped around the image URL — it also has the class "jcepopup" attached so that the JCE Javascript catches it.

Now when EasyTable Pro renders the table any field tokens will be replaced by the values in those fields. With our example table this will produce the following HTML:{nocdn}

EasyTable Pro generated HTML In Browser Display
<a rel="presidents" target="_blank"
title="George Washington portrait." href="/images/stories/USPresidents/GeorgeWashington.jpg"
class="jcepopup"> <img src="/images/stories/USPresidents/thmb_GeorgeWashington.jpg"
alt="Click for larger view."> </a>
Click for larger view.
<a rel="presidents" target="_blank"
title="John Adams portrait." href="/images/stories/USPresidents/JohnAdams.jpg"
class="jcepopup"> <img src="/images/stories/USPresidents/thmb_JohnAdams.jpg"
alt="Click for larger view."> </a>
Click for larger view.


How do I change the pagination elements in EasyTable?


EasyTable components use the standard JPagination element on our demo website the pagination elements are wrapped in HTML list elements (ie. UL, LI etc). This is the result of the template being able to take advantage of Joomla's support for overriding the rendering of specific elements.

In the JA-Purity template a pagination override can be found in the /templates/JA-Purity/html/ directory, it's called pagination.php.

Changing Pagination for your Template

If you want to change the pagination for your template you will either need to create/modify a pagination.php file. You will need and understanding of both PHP and HTML to achieve this.

You can read more about Joomla overrides here.



500 - Error: "yourfilename.csv could not be moved"


When uploading a large CSV file via EasyTable for J! or EasyTable Pro the system throws a 500 Error similar to the one show below.



This error occurs as the upload form has a hard limit of 3,000,000 bytes and so for files greater than that the browser doesn't actually send the file to the server.


If you're using EasyTable Pro you can simply cut the file in pieces less than 3,000,000 bytes in size.

If you're creating the table for the first time you can include column headings in the first segment to make things easier when configuring the table after the data has been imported.

Advanced Solution

If you're sure of your PHP settings on your server (eg. upload_max_filesize) and not concerned about editing PHP files you can increase the limit to a size large enough to accommodate the data file you're importing. The line you want to edit is found in:


at approximately line: 115 you will see the following code:

<!-- MAX_FILE_SIZE must precede the file input field -->
<input type="hidden" name="MAX_FILE_SIZE" value="3000000" />

Using field tokens to create custom URLs in EasyTable Pro!

With EasyTable Pro's field options you can combine several fields to produce a custom URL for each record.

This FAQ assumes you know about EasyTable Pro's field tokens, you may want to read this article about the basics of using field tokens for substitution functions.

There are lots of things you can do with URL's you may want a custom text for each click link or you may want to set a subject in an Email link, we'll look at both of these to try and provide you with a base skill set to help you achieve your goals on your website.

For the purposes of this FAQ we're assuming our table has fields with the following names and alias.

Name Alias
Website URL website-url
Name name
Email emailfield
Reference Number reference-number

Some typical records might be:

Website URL Name Email Reference Number
http:://google.com Eric eric_s@google.com 600613
http://apple.com Steve sjobs@apple.com 09913

A custom link text

Rather than having the raw URL or the same link text for each row (eg. Click Here), a nice presentation might be "Click here to open MyBusiness's Website".

Using the example table and records to achieve this with EasyTable Pro you need to take several steps first:

  1. set the field "Website URL" to a type of "TEXT" (this prevents EasyTable Pro apply type specific formatting to the field).
  2. set the field options to the following:
<a href="#website-url#" target="_blank">Click here to open #name#'s Website</a>

NB: the target is set to open a new browser window.

Now when EasyTable Pro renders the table any field tokens will be replaced by the values in those fields. With our example table this will product the following HTML:

EasyTable Pro generated HTML In Browser Display
<a href="http://google.com" target="_blank">Click here to open Eric's Website</a> Click here to open Eric's Website
<a href="http://apple.com" target="_blank">Click here to open Steve's Website</a> Click here to open Steve's Website

A mailto: URL

To create a mailto: link, is a similar process, except this time we are adding options to the field with the email address in it.

  1. set the field "Email" to a type of "TEXT"
  2. set the field options to the following:
<a href="mailto:#emailfield#?subject=Reference%20Number%20#reference-number#">Click here to send #name# an Email!</a>

NB: the %20 is the HTML equivalent to a ' ' ie. a space.



EasyTable Pro generated HTML In Browser Display
<a href="mailto:eric_s@google.com?subject=Reference%20Number%20#600613">Click here to send Eric an Email!</a> Click here to send Eric an Email!
<a href="mailto:sjobs@apple.com?subject=Reference%20Number%20#09913>Click here to send Steve an Email!</a> Click here to send Steve an Email!

How does table sorting work in EasyTable Pro?


EasyTable Pro allows users to click on a column heading and have the table sorted by the values in that column. Please note EasyTable also lets you sort the entire table prior to display as well as records on the current page.

How do you turn it on?

The EasyTable components support Joomla's standard preference model, ie. you can set a preference at the global component level, the menu level or the table level.

Global preferences are set via the Parameters button is the EasyTable Pro Manager, these Global component preferences can be over-ridden when you link to the component through the Joomla menu system. The preferences set at the menu level can in turn be over-ridden at the individual table level.

To make a table sortable in the front end you must set the "Make Table Sortable" preference to "Yes" at the level you want. So if you want all tables to be sortable you can set it at the component level via the Parameters button, all menus linking to tables and all tables at that point will by default inherit that setting.

Table Preferences

How does it work?

When the preference is set to "Yes" the EasyTable Pro component adds a javascript file to the page the table is displayed on, the file is added via a script reference similar to the one below.

The Javascript only sorts records that are on the current page, when a column heading is clicked the column will be sorted into Ascending order first, the next click on the same column will change it to a Descending order.

<script type="text/javascript"

This Javascript file contains a function SortableTable() which the EasyTable component adds to the page after the table. It is this function that performs the sorting.

The sorting works best on text, numbers and date columns. Advanced date, number and currency formatting for column data can result in values being sorted alphabetically rather than in the order expected. Post the 1.0 release the sorting functions will be revisited to try and address the sorting of formatted data.

In addition to sorting the records into an ascending or descending order the function adds a CSS class to the table heading that allows you to style the header appropriately (read the FAQ for more information)

How do I add indicator arrows to show column sorting?

Sorting CSS Classes

When table sorting is enable clicking on the column heading will sort the records on the current page by the values in the column. This results in several changes to the table structure.

The first change is that one of two classes is added to the column heading, one the first click the class etAscending is added. A subsequent click will change the class to etDescending, with the class alternating between the two on subsequent clicks.

The second change is that a property is added to the column heading called sortdir, with subsequent clicks this property alternates between values of "down" and "up". This property is used by the Javascript as a reference for the sorting process.

The final change of course is that records are re-ordered by the Javascript.

Once a table column has been clicked it's HTML will look something like this example taken from the Presidents table on our demonstration website.

<td class="sectiontableheader president etAscending" sortdir="down">President</td>

To style the column headings you will need to do several things

  1. create matching classes in your templates CSS file.
    (Luckily Joomla lets you edit the CSS of your template via the Template Manager)
  2. find/create suitable graphics to indicate sort direction
    (Again, Joomla's standard installation includes a set of sort indicator icons
  3. determine any other attributes you may need to modify for your specific template.

To help you with this process - the CSS we use on our demonstration website is provided below and uses the standard icon's mentioned.

Example CSS

The following example CSS has been added to the end of the JA Purity template CSS on our demonstration website and can be seen working on the US Presidents table.

/* Example CSS adding Sort Indicators to Table Headings
  (This CSS is placed at the end of the JA Purity's template.css file) */
.etAscending {
    background:url(/images/M_images/sort_asc.png) no-repeat 99% 2px #FFFFFF;
    border: 1px solid #444444;
.etDescending {
    background:url(/images/M_images/sort_desc.png) no-repeat 99% 2px #FFFFFF;
    border: 1px solid #444444;
/* This CSS changes the cursor to indicate that the heading is clickable or
   the sort direction after a click */
#et_table_page .sectiontableheader { cursor: pointer }
#et_table_page .etAscending:hover { cursor: s-resize; }
#et_table_page .etDescending:hover { cursor: n-resize; }

Where's the Demo Website?

You can find demonstrations of our software for Joomla! 3 on our reference website.



How can I show all the records in a table?

The EasyTable component follows the Joomla! convention for lists of records, ie. the default number of records displayed is controlled by the website's "Global Configuration" in Site->Site Settings->List Length. The Joomla! default is 20 records and once a user changes this value that becomes the user default.

For tables of information it is often necessary to show all of the records in one page, with EasyTable preferences you can do this. Control over a Tables pagination can be set at three levels for Joomla! 1.5 and two levels for Joomla! 2.5+ — the EasyTable Global Parameters (set in EasyTable Manager), the EasyTable Menu item (in Joomla! 1.5) and in the EasyTable table editor. As you would expect of a Joomla! component the default values are taken from the Global Parameters and they are over-ridden by any settings in the table, finally they are over-ridden by the setting in the Menu.

To show all the records in a table you must open the Table Preferences panel and set the "Enable Table Pages" to "No" ("Show Table Pages" in EasyTable 1.0). For a table with a small number of records (100-200) this shouldn't have a big impact on your server, however, if you have a table with a large number of records (thousands) and you're using a shared or resourse restricted server you may encounter issues.  For a large number of records in a table and a high number of users we don't recommend turning pagination off — symptoms you will encounter include Out of memory errors

  • Out of memory (allocated XXXXXXX) (tried to allocate YYY bytes)
  • page timeouts
  • users on other parts of the site experiencing slow responses (as the servers resources have all be used up by another user requesting the 10,000 records in your table).

If you have a short table it's probably best to change this preference only in the table. If you have lots of tables and some are quite large we don't recommend setting this value to no in the Global Preferences as it can result in the problems mentioned and it a lot of work for your server and a large amount of data being sent to the end user (which your host may charge you for).


EasyTable for J! - Table Preferences->Show PagesEasyTable for J! - Table Preferences->Show Pages Table Preferences — EasyTable Pro! v1.1.0Table Preferences — EasyTable Pro! v1.1.0

Problems after software update?

In our Joomla websites we sometimes see unexpected results, like:

  • old layouts
  • missing modules
  • wrong user specific data

For those situations usually clearing or turning off Joomla's cache will fix the issue. If you don't know what I'm talking about you should probably get professional advice before turning anything off or clearing out the cache.

This FAQ has been written because we have had a case reported where modules didn't show up after upgrading to a new version of EasyTable Pro - even though we don't use Joomla's cache option in EasyTable the solution, as you can probably guess was to clear Joomla's cache.

How do you clear Joomla 1.5's cache? 

Easy, go to the Tools menu and select "Clean Cache".

Joomla - How to Clean Cache

Selection the options you want to clear and press the "Delete" button. If you have a lot of elements to your website the cache list may have multiple pages.

Usually we just clear the whole cache by clicking on the checkbox under the tab heading "Site".

Finally you can return to the Tools menu and click on the "Purge Expired Cache" menu option then click on the "Purge expired".



Why does only the first column display in my table?

Software Affected:

EasyTable Pro prior to version 0.8.0


When using EasyTable Pro only the first column of the table displays in the list view.  The same table in the free EasyTable for J! shows all columns.


Early versions of PHP 5.2 don't reset array indexes when used in 'foreach' loops causing the rows array to be traversed incorrectly.


  1. Upgrade to a later version of PHP - version 5.2.6 and above do exhibit the problem.
  2. Upgrade to EasyTable Pro v0.8.0 or higher which has a work-around for the problem.


Javascript errors / problems toggling Red X in view columns / front-end sorting not working


  1. Browser reports a a Javascript error
    • eg. "Function not found" or "javascript:void(0);"
  2. Trying to toggle the "Red X" in the List View, Detail Link or Detail View column fails.
  3. After turning on table sorting in the Administration screens, front-end table sorting doesn't work.

Possible Causes


When users have experienced this problem the cause has been that they are running a developement or test version of the Joomla website in a virtual testing environment like WAMP or similar on a Windows variant. If the configuration of the virtual environment is not correct then Joomla's constant DS (stands for directory separator) can be wrong resulting in certain older browsers experiencing problems in resolving the path to the Javascript files required.

eg. the path will have '\' rather than '/' or vice versa.

MooTools Upgrade

EasyTable Pro (or EasyTable for J!) is/are not compatible with the System plugin introduced in Joomla 1.5.19.


Generally users can do one of three things;

  1. Change the virtual server configuration so that Joomla sets the DS value properly (we don't know how but people tell us it can be done).
  2. Use a different hosting setup that doesn't require a virtualisation box (we work on Mac's and Linux hosts so we don't see these problems).
  3. Try a non-Internet Explorer browser which can parse the path even with the error (preferably a recent Firefox, Safari or Google's Chrome).


This FAQ is current as of EasyTable for J! 1.0.5 and EasyTable Pro 0.9.0. EasyTable Pro 1.0 no longer uses the DS separator and has no reports of this problem. 

Where can I find other versions of EasyTable for J!

Previous Version

If you click on the "Downloads" menu heading (http://seepeoplesoftware.com/downloads.html) rather that the menu item "Easytable for J!" you will get to all the files available for download.

Current Version

If you mouse over the "Downloads" menu heading (http://seepeoplesoftware.com/downloads.html) and then click on the menu item "Easytable for J" you will download page for the current publicly available version.

You will find the sample files in the general "Downloads" area.

Subscriber and Pre-Release Versions

Current Support Subscribers are able to get the latest version of EasyTable from the private Subscribers Downloads area. You can download these versions as long as your support subscription is current.

You will find the sample files in the general "Downloads" area.

How do set the page title for an EasyTable?

From the Menu

EasyTable lets you create a menu items that show:

  • List's of Published tables
  • A specific table
  • A specific record in a table (in EasyTable Pro)

Like all other menu items in Joomla, creating an EasyTable menu item is quite simple, the first step is to choose a menu item type and then give it a name. If you've created a menu item in Joomla before this next image should be familiar:

EasyTable Menuquot; /></p> <p>The only thing you need to do is give it a name - the rest is all optional. Of course position it the menu hierarchy isn't really optional if you want your website to make sense but you don't have to expressly set it.</p> <p>When creating a menu item with Joomla one of the most over-looked options are the

When creating menu items in Joomla one of the most overlooked aspects are the Parameters (System) - found in the panels on the left of the menu screen. Amongst other things they let you control the appearance and text of a page title when it's linked to from a menu item.

Parameters (System) Panel

If you add any text to the "Page Title" box it will over-ride the table name for the title of the page, otherwise the table name becomes the page title.

Remember this doesn't change the name of the table just the page title that is shown on that table when accessed through that menu item.

From the Table list?

If you create a menu-item that show a list of all published tables, the list of tables will inherit the "Page Title" text but, then tables accessed from that list will always have the actual table name as the page title.  There isn't a Joomla compliant want to change the page title of tables from the table lists.

In versions prior to 1.0.1 the table name was overlooked when generating the page title.

What version of EasyTable is installed | available?

EasyTable for J! and EasyTable Pro show both the currently installed version and the version available for download. (Download & information about current versions of all our software is here.)

The version information appears directly above the list of tables in the EasyTable Manager, in EasyTable for J! it looks like this:


In EasyTable Pro it is slightly different and looks like this:

EasyTable Pro - Version Information

The line of version information acts as a mouse-over hot spot, if you move your cursors over the "Current Release" sections (highlighted above) a post-it note notice will appear showing you any important information about the new version. Simply move your cursor off the hot spot area to make the post-it note go away.

The EasyTable & EasyTable Pro components retrieve the version information from our servers making sure the update information is current. In the near future this system of version checking will receive an update that executes the check in the browser, rather than on your server, to avoid problem with some hosting services.

Aug. 2012: In line with the end of life for Joomla! 1.5, support for Joomla! 1.5 compatible versions is no longer available.

EasyTable Pro! 1.1.0+

In EasyTable Pro 1.1.0+ the version information is displayed slightly differently as shown in this image below, additionally to read about the release now you will have to click on the version number link to open a new windows with the release details.

EasyTable Pro 1.1 Manager Version Information

Related Problems

The version checking system was changed to deal with problems discussed in this FAQ.


Current as at Version 1.1.1 of EasyTable Pro and 1.0.5a of EasyTable for J!



Minimum Requirements for EasyTable

EasyTable is a Joomla 1.5 Native component it does not work with any 1.0 era versions of Joomla. There will not be a version for Joomla 1.0 (unless you want to pay for it to be written, in which case contact us).

Having said that EasyTable 1.0 & EasyTable Pro 1.0 (and all previous versions) have the following requirements.


Joomla Version

1.5.14 ( although it may work on previous versions of Joomla 1.5 { 1.5.10 does have a known issue with packages that we can't address } )

EasyTable Pro requires 1.5.20 ( although it may work on previous versions) 1.5.25 ( is recommended )


MySQL 5.0+

PHP Version

5.1+ ( 5.1.12+ recommended ).



Confirmed for EasyTable for J! 1.0.5a and EasyTable Pro 0.9.0 and later - 23 Feb 2011

What are the simplexml_load_file warnings...


This low-level warning appears when EasyTable appears in the Administrator screens when the component tries to get information about the currently available version of EasyTable and compare it with the currently installed software. As a low level warning it doesn't affect the operation of the component.

If you receive this warning it means several things:

  1. Your Joomla installation is not running the recommended PHP configuration for Joomla 1.5 and thus is showing you low-level warning messages that generally don't affect the operation of the Joomla or any extensions you may have installed.
  2. the warning message is the result of EasyTable not being able to check the version information on our servers.
    1. the component tries to load a version information file from our servers
    2. your server configuration doesn't allow remote access to the XML file
    3. we capture the error message but
    4. the PHP warning level is set to show even low level warnings.

Apart from configuration issues these warnings can also appear in testing environments if:

  1. you are not connected to the internet
  2. a proxy/firewall/network cache blocks access to the SeePeopleSoftware.com website
  3. you're using an incorrectly configured virtualisation environment ( WAMP, MAMP, WinAMP, VMWare, Parallels etc... ).

Possible Solutions

You can prevent the warnings from appearing by setting the error_reporting level/value to a level that doesn't report warnings.

You can fix the error completely by setting allow_url_fopen in php.ini to on.  (NB: this presumes that your network doesn't block access by your server to the internet)


If you're comfortable editing PHP file you can disable the version check by making the following changes.

For EasyTable for J!

Starting at line 46 through to line 81 of


you will find a function called et_version() replace that function with the code below:

Note: you will have to do this for any updates, like the about to be released 1.0.5a.

function et_version($source='public')
* Let's fake a version check.
$et_version = '0.0';
$et_version_tip = JText::_('VERSION_CHECK_FAILED_TO_CONTACT_SERVER_');

$et_version_array = array("version" => $et_version, "tip" => $et_version_tip);

return $et_version_array;


For EasyTable Pro

Starting at line 28 through to line 60 of


you will find a function called et_version() replace that function with the code below:

Note: you will have to do this for any updates prior to the 1.0.0 release.

function et_version($source='public')
* Let's fake a version check.
$et_version = '0.0';
$et_version_tip = JText::_('VERSION_CHECK_FAILED_TO_CONTACT_SERVER_');

$et_version_array = array("version" => $et_version, "tip" => $et_version_tip);

return $et_version_array;


This method will be replaced in the 1.1 version of EasyTable for J! & the 1.0 version of EasyTable Pro to a browser based ajax solution which should work in a broad range of environments and prevent a component blocking failure occurring on the server.


Why doesn't EasyTable XXXX XXX?

EasyTable is designed to be "Easy" to use, remember this before getting upset and ranting at my people in support.

EasyTable is written by me, Craig Phillips and no one else, it's written in my downtime when I don't have a paying job to work on that feeds the boys and girls of my business family, so, again, remember this before getting upset and ranting at my boys and girls in support. (Yes Virginia even though 1000s of websites use one or another version of the EasyTable component it doesn't at this point even pay for it's hosting.)

…have table sorting?

Sorting in a web page has lots of issues - first is the fact that browsers are basically widely different in their feature sets right now (yes Internet Explorer I'm looking at you). Next up the way we would like to do it is on top of a descent, modern JavaScript framework like MooTools 1.2.x or later - yes Joomla I'm looking at you. Finally any implementation at this point will have issues because of the proceeding problems.

We are adding sorting to EasyTable Pro as both a backend setting (ie. you pick a field and we sort it before sending the page to the user) and a Javascript feature available by clicking on column headings (if enabled). Again these is not perfect and add a layer of complexity that would be better avoided.

The eventual aim is to move EasyTable Pro to a AJAX based design that will load all records of the table into a page and sort, filter and display them based on user actions without returning to the website for each request.

…have it's own CSS file?

EasyTable is designed so that it uses standard Joomla classes where possible. To this end table headings and rows follow this principle where possible so that properly implemented Joomla templates will format the tables automatically.

The second reason is that every time you add a new file to a template (such as a custom EasyTable CSS file) it slows down the browser experience and adds load to your sever slowing down everyone visiting the website. There's a good reason there are dozens of extensions available to compress, join and minify CSS and JS files in your Joomla tempaltes.

…dispaly in a module?

The original design was for producing full page tables, a module element is being considered for the post 1.0 time frame. Modules though have limited configuration abilities so were not sure exactly what will be possible.

…display in an article?

See above, but an article plug-in will be available post the Joomla 1.6 installation compatible version.

How do I let you know what I want in the next version of EasyTable?

Please use the forums to let us know what features will make EasyTable easier for you to use.

500 - Error: Installation may be corrupt/incomplete

500 - An error has occurred.
Failed to open easytable.xml during version check - installation may be corrupt/incomplete.

EasyTable performs an quick version check each time the component is opened in the Administrator area of Joomla.

If the easytable.xml file can't be found this indicates that the installation was not successfully completed by Joomla or that the file has been deleted. As EasyTable manipulates your database directly we don't take the risk of a faulty installation and simply stop the component from proceeding.


You can try re-installing the component to rectify the problem, but if this fails you will need to either try the General Joomla Installations troubleshooting steps or contact your hosting provider to determine the cause of the problem.

Versions Prior to 1.0FC9

If you are using versions prior to 1.0FC9 you will experience a similar error that reads as shown below.

500 - An error has occurred.
Failed to open public_easytable.xml during version check - installation may be corrupt/incomplete.

Notice the file that couldn't be opened is prefixed with "public_" (in some very rare cases it could be prefixed with "subscriber_" but this has never been reported).

This error occurs because your website can't contact the SeePeopleSoftware.com website to check current version data. Due to a coding bug in all versions prior to FC9 the EasyTable component would mistakenly abort it's execution rather than setting the version display message appropriately.


Upgrade to a more recent version of the EasyTable component.

Changing the number of records processed


If you have a table with a large number of fields in each record you may experience timeouts or out of memory problems. This occurs for a variety of reasons including PHP file upload limits, memory limits and time out settings.

If you've already tried

  1. splitting the file up into smaller files and appending the records.
  2. increasing the limits mentioned above

Then you could try modifying EasyTable Pro to process a smaller number of records at a time.

In EasyTable Pro you can change the "Chunk Size" setting by logging in as the Super Administrator and entering an new value — the default value is 50 rows at a time.

Depending on your record size you can safely reduce the value of $chunkSize to 1 if required, in most cases simply halving the value is sufficient.

This will do several things, one it will reduce the amount of memory required to process each chunk and two if will increase the number of steps required to process the same number of records, causing the process to take longer than it would normally.

For versions prior to EasyTable Pro 1.0.0ß1

To do this you will need to edit the file /administrator/components/com_easytablepro/controllers/easytable.php

In that file you will be looking for the following code "$chunkSize = 50" highlighted in the code block below:

function updateETTDTableFrom ($id, $ettdColumnAliass, $CSVFileArray)
// Setup basic variables
$hasHeaders = JRequest::getVar('CSVFileHasHeaders');
$totalCSVRows = count($CSVFileArray);
$chunkSize = 50; // Arbitrary chunking size at this point...
$csvRowCount = 0; // Check our CSV column count matches our ETTD  


Current as at 9th June 2011.

500 - Error: "Column count mismatch"

500 - An error has occurred.

Update of data table failed (Column count mismatch) for table: X

In this example message the X represents the numerical ID of your particular table (eg. X could 2 as with the Table ID shown below).

If you received this error message while trying to upload a CSV file to an existing table it means that the number of columns/fields in the table differs from the number in the CSV file you are trying to upload. Have you added or removed any columns since you first created the table?

If you have a large number of columns, you can quick check the number of columns in a table by checking the statistics section of the EasyTable editor (as shown in the screenshot below).

EasyTable - Table Statistics

500 - Error: Data insert failed for table: X in updateETTDTableFrom()

500 - Error: Data insert failed for table: X in updateETTDTableFrom():
Possibly your CSV file is malformed

This error occurs when uploading a new file to the component. This is the result of errors in the CSV file being uploaded - the CSV file format (RFC4180) is defined here, a more readable summary is on Wikipedia.

EasyTable only supports CSV files and it does this using PHP's method fgetCSV method. If the fgetCSV throws up an error you will see that line "Possibly your CSV file ismalformed"

The first thing to check is the CSV file meets the definition. The best way to do this isusing a Unicode aware text editor that can search for & display invisible characters in your CSV file, ( and no Notepad isn't good enough ). I personally recommend BBEdit but I'm sure there's something on Windows/Linux environments that does a similar job.

Things to look out for

  • control characters that need to be encoded first
  • comma's in the body of a field that aren't properly encased
  • the wrong delimiter used for fields eg. a semi-colon ; rather than a comma

To determine if your file is the source of the problem try downloading the sample CSVfile in our downloads area and uploading it to your website. If that works then there's a reasonable chance that your CSV file is malformed as the error message indicates.

Failing all of that, if you have a current Support Subscription you can send the file in question to our subscriber support forum and we'll take a look at it for you.

Why do letters like é, å, ä, ö disappear?

Quick Answer

The EasyTable component as mentioned elsewhere, uses the CSV parser built into PHP, which probably follows the RFC for CSV files very closely.

According to the RFC any field in a CSV file should only contain text data (remember this is an old standard from before the internet, and text basically means a-z, A-Z, 0-9 and a few special characters).

Note that those ranges don't include unicode characters outside of the original ASCII character set. If your CSV file has Unicode characters the PHP parser probably drops them (either that, or we've made a mistake).

How do I fix this?

The program that's exporting the data should already do that for you (although some don't).  Basically Ó would under normal conversion rules change to either O or &Ouml; based on options your program may support. For example one of our users reported that he successfully converted the file to CSV UTF8 by:

opening the excel-generated csv file with notepad, and overwritting it saving the file as a UTF-8 text-file


Some common encoding examples:

Ö becomes &Ouml;

É becomes &Eacute;

Ë becomes &Euml;

Ó becomes &Oacute;

To make your CSV file work reliably you will need to convert it's non-ASCII characters to HTML equivalent entities. There are tools available on the web that will do some degree of HTML entity conversion for you, two examples we're aware of are:

A bit more technically

Fields in CSV files are considered to be TEXTDATA, where TEXTDATA =  %x20-21 / %x23-2B / %x2D-7E

The section below expands out the hex values to their common text equivalents:

[space] !

#  $  %  &  '  (  )  *  +

-  .  /

0  1  2  3  4  5  6  7  8  9  :  ;  <  =  >  ?

@  A  B  C  D  E  F  G  H  I  J  K  L  M  N  O

P  Q  R  S  T  U  V  W  X  Y  Z  [  \  ]  ^  _

`  a  b  c  d  e  f  g  h  i  j  k  l  m  n  o

p  q  r  s  t  u  v  w  x  y  z  {  |  }  ~


No Data Table Found For...

If you get a status section like this one:

No_Data_Table_Found Status

It's usually because you missed Step #5 in the Creating A New Table section of EasyTable Editor Explained (Part 1).

EasyTable for J! (free version) vs EasyTable Pro

 EasyTable 1.0 “Free” vs “Pro”

EasyTable Pro is currently at version 1.2.3 for Joomla! 2.5 (this version is considered final), and verion 1.0.5b for Joomla! 1.5.x (this version is final), you can read about the current version here.

Administration FeaturesFreePro


Joomla! 1.5 Native


Joomla! 1.5 Native


Joomla! 2.5 Native

New Table Import Wizard No - not available. No - not available. Yes
Import “CSV” text files. Yes Yes Yes
Import "TAB" delimited text files. No - not available. Yes Yes
Import new datasets into existing tables. Yes Yes Yes
List View Yes Yes Yes
Detail View (using detail link per record) Yes Yes Yes
Image Names Yes Yes Yes
URLs Yes Yes Yes
Email fields Yes Yes Yes
Dates No - not available. Yes Yes
Numbers No - not available. Yes Yes
Text Yes Yes Yes
Column Ordering Yes Yes Yes
Per Table Searching Yes Yes Yes
Joomla Search Integration No - not available. Yes Yes
Nominated Search Columns No - not available. Yes Yes
Per Table Pagination Options Yes Yes Yes
“Publish/Unpublish” Tables Yes Yes Yes
Access Levels ( Public | Registered | Special ) No - not available. Yes Yes
Linked Tables Yes Yes Yes
Use Existing Database Tables No - not available. Yes Yes
Column/Field Options for formatting and URL handling No - not available. Yes Yes
Finer storage controls for MySQL columns No - not available. Yes Yes
Edit a Column Alias No - not available. Yes Yes
Add/Delete Column No - not available. Yes Yes
Editing Existing Rows No - not available. Yes Yes
Add/Deleting Rows No - not available. Yes Yes
Append Rows to Existing Data No - not available. Yes Yes
Filter of tables in Table Manager view No - not available. No - not available. Yes
Sort of tables by name or status in Table Manager view No - not available. No - not available. Yes
Administration Access ControlFreePro 
Joomla! 2.5 ACL for front-end viewing and back-end access No - not available. No - not available. Yes
Settings Access No - not available. Yes Yes
External Table Linking Access No - not available. Yes Yes
Table Management Access No - not available. Yes Yes
Data Uploads Access No - not available. Yes Yes
Data Editing Access No - not available. Yes Yes
Administration Processing ControlFreePro 
Max. File Size No - not available. Yes Yes
Chunk Size No - not available. Yes Yes
Restricted Tables No - not available. Yes Yes
Raw Data Entry No - not available. Yes Yes
Uninstall ProcessFreePro 
Uninstall Setting Yes1 Yes Yes
Front-end FeaturesFreePro 
Per Table Searches Yes Yes Yes
Search in Field specifiers No - not available. No - not available. Yes3
Paginated List View Yes Yes Yes
Ranked List View No - not available. No - not available. Yes3
Search Only List View No - not available. No - not available. Yes5
AJAX List View (DataTables) No - not available. No - not available. Yes6
Detail View Yes Yes Yes
Alternative Layouts Support for Records view
(you can create your own layouts and drop them into your /template directory)
No - not available. No - not available. Yes
Linked Tables Yes Yes Yes
Deep Link Tables Yes1 Yes Yes
Unique HTML ID for each table Yes Yes Yes
Unique CSS labels for each field in each tabled Yes Yes Yes
Alternate CSS labels for alternating rows in tables Yes Yes Yes
Improved JRoute URLs Yes Yes Yes
Alt-Text/Title for Table Heading Descriptions Yes Yes Yes
Leaf field nomination for better SEO with Detail Page Titles and URLs No - not available. No - not available. Yes3
Records Cache for better performance and reduces load on Database No - not available. No - not available. Yes4
Advance to next record in detail view No - not available. Yes Yes
Default Sort Order No - not available. Yes Yes
Column Sorting (per page) No - not available. Yes2 Yes
Filtered Views (data displayed after pre-defined search settings) No - not available. Yes Yes
Basic Filter supports multiple comparison values No - not available. No - not available. Yes6
Advanced Filter with matching against CURDATE(), CURTIME(), NOW() and PHP return values No - not available. No - not available. Yes6
Menu Link to sorted list of all tables with/without table descriptions. Yes Yes Yes
Menu Link to a specific table Yes Yes Yes
Menu Link to Record Views No - not available. Yes Yes
User ID or Username filtered Records No - not available. Yes Yes
Customisable  per table view "No records found" message. No - not available. No - not available. Yes5
Customisable "Search Only results" prompt message. No - not available. No - not available. Yes5


Available in the current Version Yes
Under Construction Work In Progress
Planned (but not yet being worked on ) Planned but not currently underdevelopment
Not available/planned for this Version No - not available.


  1. This feature is now available in EasyTable for J! 1.0.4 and higher
  2. This bonus feature was added to EasyTable Pro! 0.9.0 and higher
  3. This bonus feature was added to EasyTable Pro! 1.1.0 and higher
  4. This bonus feature was added to EasyTable Pro! 1.1.1 and higher
  5. This bonus feature was added to EasyTable Pro! 1.1.5 and higher
  6. Advanced Filters and AJAX Table view using DataTables added in EasyTable Pro! 1.2.0


Why does my Alias have 'q' on either side of it?


Example Column Heading creates an alias example-column-heading

The Problem

Example Column Heading creates an alias qexample-column-headingq


The EasyTable component imports text files in a CSV format.

Originally text files were all ASCII files but now with the advent of the Internet and multi-byte character sets there are lots of different encoding formats. Combine this with PHP & server settings and different Operating System platforms and it's very easy to get a file that has been exported incorrectly.

If you have a decent text editor you can do a "hex dump" and see what is actually in the file. For example, this recent file looked like this dumped:

00000000: EF BB BF 22 52 65 73 75 	Ôªø"Resu 
00000008: 6C 74 20 49 64 22 2C 22 lt Id","
00000010: 52 61 63 65 20 49 64 22 Race Id"
00000018: 2C 22 54 65 61 6D 22 2C ,"Team",
00000020: 22 44 72 69 76 65 72 20 "Driver
00000028: 23 31 22 2C 22 43 6F 75 #1","Cou
00000030: 6E 74 72 79 20 44 31 22 ntry D1"
00000038: 2C 22 44 72 69 76 65 72 ,"Driver

All those non alphanumeric characters tell us the file isn't properly encoded. The same file saved out as UTF-8 no BOM looks the way it should:

00000000: 22 52 65 73 75 6C 74 20 	"Result  
00000008: 49 64 22 2C 22 52 61 63 Id","Rac
00000010: 65 20 49 64 22 2C 22 54 e Id","T
00000018: 65 61 6D 22 2C 22 44 72 eam","Dr
00000020: 69 76 65 72 20 23 31 22 iver #1"
00000028: 2C 22 43 6F 75 6E 74 72 ,"Countr
00000030: 79 20 44 31 22 2C 22 44 y D1","D
00000038: 72 69 76 65 72 20 23 32 river #2

How do I get back to the list view from a record?

When you are in the Detail view of a record you will see the table name at the top of the view. Clicking on the table name will take you back to the list view.

What file format does EasyTable support?

EasyTable for J 1.0+ and EasyTable Pro! imports data in a CSV file format. (EasyTable Pro! also supports the TSV variant for TAB seperated files.) The CSV format (RFC4180) is defined here, a more readable summary is on Wikipedia.

The key part of the error message occurs at very begining:

Data insert failed for table: XX in updateETTDTableFrom()
Possibly your CSV file is malformed

EasyTable only supports CSV (and TSV for EasyTable Pro! ) files and it does this using PHP's method fgetCSV method. If the fgetCSV throws up an error you will see that line "Possibly your CSV file is malformed"

The first thing to check is the CSV file meets the definition. The best way to do this is using a Unicode aware text editor that can search for & display invisible characters in your CSV file, ( and no Notepad isn't good enough ). I personally recommend BBEdit but I'm sure there's something on Windows/Linux environments that does a similar job.

Things to look out for

  • control characters that need to be encoded first
  • comma's in the body of a field that aren't properly encased
  • the wrong delimiter used for fields eg. a semi-colon ; rather than a comma

To determine if your file is the source of the problem try downloading the sample CSV files in our downloads area and uploading it to your website. If that works then there's a reasonable chance that your CSV file is malformed as the error message indicates.

Non-Latin CSV/TSV files

If you are using a non-latin languages you can export UTF-8 encoded CSV/TSV files which will preserve the non-latin charaters. (To see an example of a non-Latin UTF8 encoded CSV file you can download one from our Sample Files area.)

Can I change the field "Alias" for a column?

The Alias is created at the time the table is created, that's because we actually create a real table in the backend database your Joomla website is running on. The alias is the actual column name in the table in the database, it's also used to for the CSS class label for the column.

The Alias is unique and may be changed from the original column name if you have duplicate column names or if you have a column with the heading "ID" in any combinatoin of upper and lower case. ID is a reserved field name that is used as the primary key to identify each unique record, if you import a table with a column heading of ID it's alias will be renamed 'tmp-id' or similar.

EasyTable for J!


Now that the short answer is dealt with, here's the slightly longer one.

To answer the next logical question - yes in a future version you may be able to change the alias. Like all feature requests it really depends on how much time we can afford to spend on the EasyTable component.

EasyTable Pro

EasyTable Pro supports the modification of all table structure elements including the alias of a field. The same limitation to the alias value as it is still used as the actual column name in the table in the database and the CSS class label for the column.

How big can the table be?

In a strictly technical sense the table can be as big as your database can handle.

EasyTable for J! (version 1.0.x)

In reality you can currently upload a 3,000,000 byte (3 MB) CSV file with the component. Practically we could increase it or remove the limit but that would lead to problems in the EasyTable operation at the current stage of development.

However, the 3 MB presumes your Joomla installation is setup on an environment that lets you upload a file that large. We have come across some hosting providers that have strange limits - needless to say we don't use them anymore.

EasyTable Pro! (version 1.0.x & 1.1.x)

EasyTable Pro will check the file upload limits for your web server and allow files up-to that size, you can off course increase this size (if your host allows) by changing the PHP setting upload_max_filesize. Administrator can also set the limit to a lower value through EasyTable Pro!'s settings.

Other issues…

Web servers being webservers that isn't the end of this subject. While the front-end display of a table doesn't get affected by your table size you will expereince other limits relating to your servers configuration when editing an EasyTable if you lots of columns. This is the result of a setting called max_input_vars (which has a default value of 1000 fields), this setting was introduced with PHP 5.3.9 and above, prior to that no limit existed.

This setting limits the number of fields a form can have.  The max_input_vars setting is an attempt to block certain types of Denial of Service attacks on PHP servers, so it is safe to upgrade the number to meet your requirements. Again, changing a PHP setting will depend on your host, so check with them.

In EasyTable each field in a table has multiple fields required for setting the various options, these quickly add up.

EasyTable for J! has 8 form fields per "Column" in your table and about 10 fields for other settings, this means a limit of 123 columns for the default max_input_vars setting.

EasyTable Pro! 1.0.x has 11 form fields per "Column" in your table, and about 12 fields for other settings, this means a limit of 90 columns for the default max_input_vars setting.

EasyTable Pro! 1.1.x has 11 form fields per "Column" in your table, and about 10 fields for other settings, this means a limit of 99 columns for the default max_input_vars setting.

The following examples show how this can affect you if you have the default 1000 fields limit.

Version Columns in Table  Calulation of Fields Required  Result
EasyTable for J! (1.0.x) 10 (10 x 8) + 10 90 OK
124 (124 *8) + 10 1,002 Last two fields not received by Joomla!
EasyTable Pro! (1.0.x) 10 (10 x 11) + 12 122 OK
90 (90 x 11) + 12 1,002 Last two fields not received by Joomla!
EasyTable Pro! (1.1.x) 10 (10 x 11) + 10 120 OK
91 (99 x 11) + 10 1,011 Last 11 fields not received by Joomla!


I didn't have this problem on Joomla 1.5, why now?

Under Joomla! 1.5 the problem was unlikely to occur as most web servers hadn't migrated to PHP 5.3 at that time.

What else...

To answer the next logical question, we hope in future versions to add support for:

  1. ZIP'd files (you can fit a lot of text into a compressed 3 MB file).
  2. Importing a previously uploaded file from a directory with not conceivable size limit.
  3. Importing from another internet address (URL import)
  4. CRON impiorts from a directory/url

Why does the Alias of my fields have an 'a' at the begining?

The alias is used to create table columns in MySQL and it is used as the CSS class name for the column and table cell.

As a result the first character of the alias must be in the range of A to Z, upper or lower case , or [a-z,A-Z]. If EasyTable finds a column label that starts with a number or other non-alphabetic character it will prepend a lower case 'a' to the alias when creating it.

For example;

Column Label = '18 to 24'

Alias = 'a18-to-24'

How can I get alternating row colors?

Row CSS Class

EasyTable for J! and EasyTable Pro attach 'row0' and 'row1' to each alternate row, starting with 'row0' for the first row on a page followed by 'row1' for the next, then 'row0' again and so on.

<tr class="row0">...</tr> - Initial Row with 'row0' class attached.

 <tr class="row1">...</tr>

 <tr class="row0">...</tr>

Example CSS

The CSS examples described here can be seen in the tables on our demo website.

For a lot of templates the CSS is already defined for the CSS classes 'row0' and 'row1', however, a few templates do not have these class definitions. In those cases you will need to add some CSS that defines the classes. The following CSS defines the two classes, making the background of all 'row1' a light grey.

tr.row0 { background-color: #FFFFFF; }

tr.row1 { background-color: #F9F9F9; }

If you want the rows to change color as the cursor moves you can use the pseudo selector 'hover' as shown in the example CSS.

tr.row0:hover { background-color: #FFD; }

tr.row1:hover { background-color: #FFD; }

Why can't I see any records from the linked table?

Firstly have you read this article?

If you have then these are the things to check:

  1. The "Key Field" and the "Linked Key Field" are both visible in the List View of their respective tables.
    • Version 1.0fc7 and later can use any column/field even if it isn't displayed in the list or detail views.
  2. The link search is an exact match, so "California" = "California" but "California" <> "california"
  3. Make sure you haven't unpublished your linked table after linking it.

How do I use EasyTable with non-English CSV files?

If your data and locale are US/UK based then programs like Microsoft Excel will export a correctly formatted CSV file. If your locale requires non-ASCII characters (eg. Cyrillic, Arabic, Greek, Hebrew, Thai, Chinese etc...) then most programs will export a file that contains non-ASCII characters.

To overcome this you need to do two things:

  1. Convert the file to a UTF-8 format.
  2. Encode the non-ASCII characters as HTML entities

These steps are covered in our FAQs on the subject:

  1. What file format does EasyTable support?
  2. Why do letters like é, å, ä, ö disappear?


EasyTable CSS ID's and classes


This document is the result of an evolving process and will change to reflect the currently available version of EasyTable Pro

This document details the element IDs and CSS classes that are used in each of the 3 views (the list of published tables, the table list of records view and the record view).

The CSS classes and IDs listed in the tables below are basically in the order of appearance in the HTML generated by the component. Please note that these are the classes and IDs for EasyTable Pro and not all of them are available in EasyTable for J!

By adding the appropriate CSS to your templates style sheets you can implement a range of features/effects such as alternating row colors or row highlighting when a users cursors hovers over a row. The CSS required for that example is minimal, you can see it in use on the our demonstration website. For example the CSS to achieve the effects described is shown below:

tr.row0 { background-color: #FFFFFF; }
tr.row1 { background-color: #F9F9F9; }
tr.row0:hover, tr.row1:hover { background-color: #FFD; }

Why aren't styles included?

We have several reasons:

  1. each table has unique CSS identities based on the table and column names (see below)
  2. speed
  3. template frameworks and custom tempates

Each table created by a user of EasyTable Pro! has unique ID's and classes that are derived from the the table name and each field in the table (you can even override the auto-generated alias' for a table or field). This flexibility allows for very specific CSS to be created by the EasyTable Pro! user, it also means that it's possible for CSS ID's or classes to be created that conflict with your template, other extensions or if you're using a commercial template the framework that it's based on. To create a "default" or "built-in" style set will result in conflicts which whould be difficulty to undo.

All See People software is built with the aim of reducing the impact on the servers load, for EasyTable Pro! and other Joomla extensions we build this means that we don't provide "default" or "built-in" CSS styles. To do so would mean adding yet another CSS file to your website which if it's using a typical Joomla template already has dozens of CSS, Javascript, Font and image files to download for each page. In addition the complexitity of some commercial template systems available and the extremely bad coding we've found in "custom designed" tempaltes means that we can't account for all the issues that could go wrong if we start generating and enforcing CSS is a semi-autonomous manner.

We recommend either adding just the CSS to your templates base CSS file or if you're using a commercial template based on the Gantry (aka RocketTheme) or T3 (aka JoomlaBamboo et al.) using the custom CSS mechanisms already built into them.

If your template is based off the Gantry Framework created by RocketTheme then you will need to create a CSS file in the templates CSS folder as described here and add your custom CSS to it.

If your template is based off the T3 Framework you will need to follow these instructions.

If your template doesn't support an override file you can use one of the many extensions available on theJoomla Extensions Directory (JED) that let youadd CSS/JS etc via Script Integration plugins.

If you don't want to do any of the other options and it's just a standard template you will generally want to add it to the end of the main `template.css` file.

All Views

Following the convention for Joomla content components the content is displayed in a surrounding div that has a class of 'contentpaneopen', also inline with standard Joomla features you can define a Page Class Suffix (read more about Joomla and the Page Class Suffix). 

TTTTT - is used below to represent the table alias.

FFFFF - is used to represent a field alias.

List of published EasyTables

et_list_page ID The ID of the surrounding DIV, this is the surrounding div mentioned above with the class of 'contentpaneopen
componentheading CLASS The standard Joomla class attached to the DIV that contains the Page Title.
et_tables_list CLASS The class attached to the list <UL> element of table list.
etTableListLockElement1 CLASS The class attached to the "Locked" icon, EasyTable Pro supports user access levels.
et_list_table_TTTTT CLASS Each link to a table has it's own class attached to the list item <li>. The class name is made up of 'et_list_table_' with the table alias appended to it (in place of the TTTTT). So, if the table alias is 'us_presidents' the class will be 'et_list_table_us_presidents'
et_description CLASS The class attached to the paragraph <p> containing the description. (Below each table name in the list the table's description is displayed)

1The padlock icon is only rendered if the table requires a "Registered" or higher level to access it and the user is either not logged in or not of a high enough level.

EasyTable Record List

et_table_page ID The ID of the surrounding DIV, this is the surrounding div mentioned above with the class of 'contentpaneopen
contentheading CLASS The standard Joomla class attached to the H2 that contains the Page Title.
createdate CLASS The standard Joomla class attached to the paragraph <p> that contains the table's creation date.
modifydate CLASS The standard Joomla class attached to the paragraph <p> that contains the table's modification date.
et_description CLASS The class attached to the paragraph <p> containing the description.
easytable-TTTTT ID The ID of the DIV that surrounds the table elements.
search_result CLASS The standard Joomla class attached to the form used for search functions.
et_search_result CLASS The class name attached to the DIV wrapped around the search field and buttons.
pagination CLASS The standard Joomla class attached to the DIV surrounding the pagination controls.
display CLASS The class attached to the DIV wrapped around the form elements that control how many records are displayed per page.
TTTTT ID The table alias is used as the ID of the <TABLE> element.
sectiontableheader CLASS The standard Joomla class used for table headings.
FFFFF CLASS The class attached to a column heading in addition to the sectiontableheader described above, where FFFFF is replaced by the field alias. The FFFFF class is also attached to each table cell <TD> for that field. eg. FFFFF could be president as in our demo website.
row0 / row1 CLASS Alternating table rows <TR> have the classes row0 or row1 attached, starting with row0 for the first row.
colfld CLASS The class attached to each table cell <TD> and immediately proceeds the field alias described above.
eg. <TD CLASS='colfld president' >
pagination_footer CLASS The class attached to the pagination elements at the foot of the table.

EasyTable Record View


et_record ID The ID of the surrounding DIV, this is the surrounding div mentioned above with the class of 'contentpaneopen'
contentheading CLASS The class attached to the DIV that contains the Page Title.
easytable-record ID The ID of the DIV that surrounds the all of the record elements.
TTTTT CLASS The class attached to the DIVeasytable-record.
TTTTT ID The table alias is used as the ID of the <TABLE> element for the record.
sectiontableheader CLASS The standard Joomla class attached to a field heading.
sectiontablerow CLASS The standard Joomla class attached to the table cells <TD> containing the field value.
FFFFF CLASS The field alias is used as a class attached to the field heading the the table cell that contains the fields value.
easytable-linkedtable ID The ID of the DIV surrounding the table of records from the linked table, if one exists.
  CLASS The easytable-linkedtable DIV also has the alias of the linked table applied to it as a class.




What does my live server need to work with EasyStaging?

To transfer files to a target server you must be able to connect to that server via:

  1. SSH via Private/Public Key
  2. SFTP
  3. MySQL Remote

As long as your live server (hosting provider) allows you to connect to it with all three methods then EasyStaging should work.


Can I use EasyStaging on a…

Can I use EasyStaging on a shared host/public server/Go Daddy… NO,NO, NO!

EasyStaging should only be run on servers accessible only on private networks or via a secure VPN.

We don't run EasyStaging on production machines, in our setups for clients a staging site is never on the same server as a production site (in fact they're never on the same network). Using EasyStaging on publicly accessible servers is not safe and we do not support or recommend its use on publicly accessible servers.

EasyStaging is meant to only be installed on local network development server, a secured staging server on a private network or accessable only by secure VPN.

It should not be installed on a publicly accessable server.

Getting Help

Support for EasyStaging is not provided.

We do provide a community forum where you can discuss EasyStaging with other user (but, it's pretty barren as anyone using it should be able to address any problems they encounter).


EasyStaging is a dangerous tool, if you can't figure out basic issues (e.g. installation issues, file permissions, out of memory problems, server configuration and setup, user permissions i.e. PAM failures) that occur with Joomla! then you shouldn't be using it.


Trouble Shooting

EasyStaging is not an extension for the non-technical user. As we've said repeatedly if you don't understand what rsync is, how SQL works or for that matter Javascript, you shouldn't be using EasyStaging.

If you do understand all of these things and still have problems, here's our normal order of trouble shooting when a new site is being setup

When EasyStaging won't connect to the live server:

If EasyStaging doesn't connect to the live server then the first things to check are:

  1. That your host is running a LAMP based server (i.e. a unix variant with all the standard ssh, rsync etc available).
  2. That your server and development machines are using PHP 5.3.10+ or later
  3. That SSH access works, try this from your Terminal application (or your development server)
    1. Open a Terminal window
    2. Try to ssh to your server, e.g. >ssh myserver.com
    3. If this fails either:
      1. your server is not setup correctly (may not have your public key installed) or
      2. you don't have SSH setup on your computer/development server (is your private key properly associated with this host in your ssh configuration?)
    4. There are lots of articles on generating SSH keys (e.g. GitHub) and configuring SSH host+key settings, you should read some of them.
  4. Connect to your server using SFTP, the easiest way we find is to open up a nice realiable GUI app like Transmit (I'm sure there are similar easy to use products on Windows oh wait…)
    1. If you can not connect with SFTP but can with FTP, go back to Step 3 and fix your SSH, if it really is working then
    2. Have you configured your GUI app correctly? (i.e. you've told it what private key to use to connect to your server)
  5. Connect to MySQL on your live server using a gui tool (like SequelPro) using the credentials you're placing in EasyStaging.

Use the test features to try and connect to the live server, the replies are very helpful ;)

When EasyStaging, won't "run" a plan or step:

  1. Check the browsers console for errors. (e.g. resouces not loaded, Javascript errors).
  2. Make sure you can run rsync from your command line without a password prompt
  3. Use a web debugging proxy (like Charles) to check what is being sent between your browser and the server.

When the EasyStaging interface looks "wrong"

(yes, seriously that's the sort of helpful description we get)

  1. Check the browsers console for errors. (e.g. resouces not loaded, Javascript errors).
  2. See 1 (100 times out of 100, so far it's been resolved to a CSS/JS file not being loaded).

When EasyStaging hangs in the Database step…

The 1.0 version of the free EasyStaging will on some setups will hang in the Database Step (usually after telling you it has connected successfully) during the initial Plan run. If the remote database is empty and this happens simply add a table to the remote database using PHPMyAdmin or similar and re-run the plan.


When you don't understand what your doing, see our first sentence at the top of this FAQ.

Permissions after 'rsync'

With 'rsync' the permissions are based on the user account that rsync connects to at the target location. Depending on your OS and whether rsync is being connected via ssh or rsyncd will affect the permissions that are applied.

e.g. if you have a WHM/cPanel server, you should always connect to the cPanel user account for the website in question, that way the permissions will match.

Payment Plugins

No place for Name on Credit Card?

In AkeebaSubscription when the user elects to Pay by NAB, you are taken to a Payment page, which looks like this:

EasyNab for AkSubs Payment Screen

You will notice that their isn't a field for the "Name on Credit Card", there are several reasons for this, firstly the NAB Transact Direct API, doesn't use it, also as mentioned, the "Name on Card" isn't used for validation.

With the optional "Risk Management" setting that NAB offers a name could be used but the current version of the plug-in doesn't support that option. If you/your client are using "Risk Management" we'd be happy to work with them to add support for it.

If you look at the other AkeebaSubs Payment types the name is only ever gathered on the Subscription page, the plugin for Moneris cards (which works in a similar way to NAB) doesn't collect a name either. For those payment gateways that require a name, the name is passed to the payment plugin from the AkeebaSubs subscription sign-up page, we could display that name in a non-editable way but that might confuse users that want to sign-up with one name and use a Credit Card with another name.

In re-direct situations, like PayPal et al, even then the form details are hidden from the user and only a "Click Here if not automatically redirected" button is displayed.

So, that leads us to adding a name field to the payment form, it can be done but what would we do with it? If the plug-in sends it to NAB without the "Risk Management" option they will reflect it back at AkeebaSubs in the reply but AkeebaSubs doesn't store it anywhere so it's lost anyway. (In fact NAB may ask you why you're have Credit Card details sent back to your server.) This is in part the way Akeeba is designed and also a reflection of the PCI Standards which all online merchant accounts in Australia (and I believe nearly everywhere else) must adhere to.

EasyNAB no "Payer Name" or "Payer Email" in NAB Screens

EasyNAB plugins use the NAB Transact Direct API to process credit card payment through your online merchant facility.

When a transaction has been processed you can login to your Merchant Facility and inspect the transaction, in doing this you will be presented with a screen similar to the one shown below (click to enlarge).

This image has been altered to remove any identifying data otherwise it is how NAB Transact's "Transaction Details" screen look in December 2013.

Transact transaction screen


You will notice that the Payer Details section (top right corner box) shows nothing recorded for Payer Name and Payer Email.

This is becuase there isn't a field for "Payee Name" in the NAB Transact Direct v2 API, so theres no way for the plugin to pass a name to the NAB.

There is one for an email address but that is only enabled by the "Risk Management" option, specifically the only email address field mentioned is EPS_EMAILADDRESS. As mentioned in the EasyNAB Plug-in's pages the current version of the Plugin doesn't support the Risk Management option as we've never had a client with that option to test against.

If you have paid for the additional Risk Management option to be added to your Merchant Account with NAB and would like the Risk Management and Payee Name added to the plugin please get in contact with us to discuss it.


Labels you can override in EasyNAB for AkSubs

You're probably aware of the Joomla language facility that allows you to override default labels and other blocks of text. Navigate to Extensions: Language Manager: Language Overrides, and you will see a view similar to this in Joomla 2.5.x (You can read more using the "Help" button in the top right, or click here.)

J25 Language Manger Overrides


Using the Language Manager: Language Overrides screen you can change any of the language string on the plug-ins payment form. From the list of default values below simply select the key that want to change the value of and create a new override for it using the Language Manager.

Language Key Default Text
PLG_CPPL_AKP_NABTDP_FORM_CC Credit card number
PLG_CPPL_AKP_NABTDP_FORM_CVV Card Verification Value (CVV2)
PLG_CPPL_AKP_NABTDP_FORM_HEADER Please enter your payment details


XXXX is not sending eMails

Various parts of Joomla and it's extension software sends email. The majority of email sent by Joomla websites use the default mail setup specified in the Joomla's Global Configuration.

Joomla provides several different ways of setting up email in it's Global Configuration screens, in order of best to worst they are:

  1. SMTP
  2. Sendmail
  3. PHP Mail

However, in this day and age of spam filters, authenticated mailservers and DKIM the only real choice is to use an authenticated SMTP mailserver account. By using an authenticated SMTP account you eliminate a large number of the problems and you will get a notification if the SMTP server can't send the email for any reason.

SMTP is also very easy to setup and most good mailserver providers give you all the details you'll need. Simply navigate to the Global Configuration | Server tab and fill out the Mail Setting section with your account details. (Unfortunately the Joomla Doc's Global Configuration article doesn't cover Mail Settings)

Update 11 February 2015: Tim Plummer has written a quickarticle on setting up Joomla 3 with SMTP.


Our Software

See People Software extensions for Joomla do not at this writting send email (although we may in the future).

If we do update any of our software to send email or create new extensions to send email they will use Joomla's Global configuration and use Joomla where possible to send the email.

At this time 11 Feb 2015 none of our extensions send emails.

Checking Mail Configuration

If you've configured one of the three mail options and believe it work you can confirm this by a simple test. Generally the easiest ways to test your setting are to register as a new user on you website.

When you register your test user:

  1. Check for error messages on the screen when you try to register (Joomla's error messages will provide clues).
  2. If there is an error message your configuration is wrong or the mail option you've chosen is not configured/authenticated
  3. If there are no error messages then check your email account that you just registered for the standard welcome Joomla email.
  4. If there is no email check your spam filters (and if you mail account provider provides access check your mail logs for that account)

The alternative is to use Joomla's Mass Mail option — however this requires you have to configured and working Super User accounts. If you do have two Super User accounts you can use the Mass Mail option  to send a test email to just the Super User group.

As with registering a test user, you can use the four steps above to check for email problems.

Next Steps

If after all of this you still can't get email and you believe our software is at fault please document the following and send an email to Support.

  1. Make sure you're using the latest version of our software (we can't support old versions sorry)
  2. Provide your servers details per our "How to get support" FAQ
  3. Provide a link to allow us to test the issue 

Last Updated 11 Feb 2015

How do I add CSS to my Joomla website?

If changing the CSS of your website is something you'd prefer not to do, we offer ad-hoc support tickets that are available in 15 minute blocks through our main business site — you can read more about that here. Generally though that is based on our staff being able to access the server in question, so if you're using a private development system (like WAMP, MAMP etc) you will probably have to do it yourself.

Having said that adding custom CSS to a Joomla template isn't that difficult, it really depends your template as to where the CSS should go.

If your template is based off the Gantry Framework created by RocketTheme then you will need to create a CSS file in the templates CSS folder as described here and add you custom CSS to it.

If your template is based off the T3 Framework you will need to follow these instructions.

If it's just a standard template you will generally want to add it to the end of the main `template.css` file.

JUser Load Error

The "JUser: :_load: Unable to load user with ID: XXX" is a common Joomla! 2.5 error for users that have upgraded a website from Joomla! 1.5 using the JUpgrade component (although it can also occur with out using JUpgrade). You can find pages of examples on Google from just the past year. However it can also occur if you have deleted a user that has checked out an item.

Basically it means that the item in question (it can occur with articles, modules menus, EasyTables or literally anything else in Joomla) has a user ID associated with it that doesn't exist in the website user database.

The good news is that it can be fixed, the bad news is that it could take a long time if you have a lot of content that is assigned to the old user ID.

Generally you will only see the message in the /administrator section of your Joomla! website when looking at one of the manager screens that shows you a list of items and their check out status (i.e. the padlock icon) or other user information about an item (like who created it).

To fix the problem check the item in if it's checkout to the non-existant user, or if it's created by a the non-existant user edit the item and change the creator.  Of course you can also use Joomla!'s Global Check-in function to do a mass checking of items, but for invalid creator ID's it's a manual job. As we said, this could take a long time if you have a lot of content created with the old user ID.

If you have some expertise with SQL you could simply update all of the creator ID's with an appropriate script, but that is something that could wreck your site if you're not carefull, so we won't be putting those instructions up here.

Development Schedule (or How do I get feature X now?)


Our publically available open source software (i.e. that found on the See People Softare website) is generally the result of a happy overlap with the needs of a commercial client of CPPL. Generally they have a need and the software we build for them is sufficiently general enough that it has public application.

That's where:

  • EasyTable for J! and EasyTable Pro!
  • EasyStaging and EasyStaging Pro!
  • EasyGitHub Include
  • CommWeb for VM2
  • ANZeGate for VM2
  • NAB Direct for VM2
  • NAB Direct for JoomDonation
  • NAB Direct for AkeebaSubscriptions
  • CommWeb Direct for AkeebaSubscriptions and
  • ANZeGate for AkeebaSubscriptions

all came from.

New features are added (and therefore new versions created), as a result of:

  1. A Commercial development clients needs a specific feature added (e.g. Joomla! 3.5.x compatibility).
  2. If a See People client has a feature they need now, CPPL will add it for a fee.
    1. If the feature is already on the roadmap for that product and this simply brings it forward the fee is usually discounted in inverse proportion to how far forward it's being brought.
    2. If the feature isn't of use to the wider community, it won't generally make it into the public distribution and won't be subject to any discount.
  3. One of our developers has some "downtime"
    1. In this case the developer picks a feature from the products future feature list that they feel they can implement in the time they have availalbe and start work on it.
    2. Sometimes, they don't get it finished on the first go.
  4. The particular product has generated enough subscription revenue to pay for a feature on the list and we can assign a developer to implement it.

Why is it this way?

To put it simply, we have to pay staff, we have to feed our kids... just like you we need to make a living.

While people love and use our software on thousands and thousands of websites (going on the version check logs) the percentage that actually subscribe rather than downloading unofficial versions is very low (we estimate in excess of 98% of the Pro copies of our software are unofficial). Recently an *unofficial version* of EasyTable Pro! was used by someone to distribute a nasty payload, but what can you expect when you download software from dodgy Russian websites.

Visibility of the software on the JED also remains very low. Very few subscribers actually even vote for or leave a review for our software on the Joomla! Extensions Directory (far less than 1% in most cases), and actual subscribers are less than 1% of actual users.

While we love open source software, what really pays the bills around here is the commercial, proprietary work.

Development Schedule

So, can you guess where this is going?

We can't make a hard and fast pronouncement about product X's release schedule as we generally don't know. We will tend to talk about products that are actively undergoing work (i.e. someone is pay for), but only when it is close to being released to the public.

If you desperately need a feature on the list for the next version, but you need it now, then sponsor it.

If you need a feature that's not on the list get a quote for it.

If you need something "similar" to one of our products but "completely different" then may I suggest you get a quote for it.

Joomla!'s New Development Cycle

The Joomla team are aiming for a fixed release cycle. Every six months, the Joomla! Project tries to release a new minor or major version of Joomla! (Since version 1.7 they have been pretty close on meeting these self-set goals).

A key factor in this new cycle is that the "point zero" versions (e.g. Joomla! 3.0) are allowed to introduce changes that break existing software, and the code base is allowed to change until the "point two three" version before being locked down in the final "point five" LTS (Long Term Support) version (e.g Joomla! 2.5).

This is a good thing™, in that it allows Joomla! (the CMS) to advance at a predictable pace and it means it won't stagnate like the long lived Joomla! 1.5 version did. The only downside is for small software developers and niche extensions that can't update as frequently as Joomla! breaks things.

In light of this cycle and the way our extensions come into existence and the ways they are funded most extensions are only going to be available for the LTS versions of Joomla! and generally in-line with the needs of the clients of CPPL.

If you need an extension to support a new version of Joomla! that it currently doesn't you might consider paying for the work to be done, why not get a quote for it.


Forum Registration

If you're registered for the See People Software website then you're registered for the forums. To access the forums you will need to login first.

If you're not registered or logged in you can click on the "Register" menu in the main menu bar.

Due to the high volume of pornographic spam we have changed the forum registration process so that new registrations require administrator approval. You can read more about it in this forum thread.

How do I login/post to the support forums?

How do I login?

To login to the forums you need register with the website. You can do this either from the Registration page or from any other pages in the website you can click on the "Register" menu item in the main menu bar.

How do I post to the support forums?

After logging in to the site, navigate to the forums section of the website.

If you're a current Support Subscriber you will see the additional "Subscribers Forum" as shown in this screenshot:


Click on the name of the forum you want to post in. Then once in the forum click on the "New Post" button as shown in the image below of the "Support Subscribers" forum.

Here's the New Topic Button


Why do I need to increase my PHP memory limit?


When asking this question most users forget that their web server is a multi-user system.

The configuration for the memory_limit of PHP running as an Apache module to server webpages has to take into consideration how many Apache process you can have at the same time on the machine (this is controlled the MaxClients configuration option for Apache).

If MaxClients is 100 and you have 2,000 MB or RAM, a very quick calculation will show that you should not use more than 20 MB *(because 20 MB * 100 clients = 2 GB or RAM, ie the total amount of memory your server has)* for the memory_limit value.

Add to this other software running on the server, like MySQL, mail servers, the operating system and Apache itself and you can easily run out of memory and have odd results.


When using the Joomla CMS memory usage can increase dramatically with a large number of extensions installed and a large amount of data to be managed.

Signs that you may be experiencing memory limit problems include

  • pages not rendering completely
  • components or extensions reporting memory errors
  • partial content being returned and
  • page timeouts on pages that use a lot of components/extensions.

Bug Reports/How to get Help

All Users

The quickest way to solve a problem is to look for existing solutions. On this website that means the following:

  1. Read the articles about your particular software.
  2. Read the FAQ (Frequently Asked Questions) - we have lots of answers in there.
  3. Search the forums for error messages or appropriate keywords.
  4. Do not use the Forum's Private Message (PM) function - we don't check them
  5. Make sure you post in the "Subscribers" forum, they're actively monitored unlike the "Community" forums.
  6. Check your website is working correctly by turning on Joomla's DEBUG mode and setting error reporting to a suitable level (e.g. "Development")

If none of those help then login to the appropriate forum and post your question. When you post your question don't forget to provide context so people can provide the best answer - start with the things suggested below.


Free Software Users

If you have problems using any of the software on this website please use the FAQ's and user forums to try and resolve it.

Don't send us an email as this will not help you get an answer and it won't help other users who may be experiencing similar problems. Don't use the contact forms either as they go to sales. Email and contact forms only go to one address whereas our support forums are seen by many people making the chances of you getting a prompt answer much higher.

Read the FAQ's, search the forums and if you can't find an answer then post a question on the forums, remember the things suggested below.


Current Support Subscribers

If you're a paid support subscriber please use the subscribers forum which is monitored by our support staff. If it is urgent in addition to posting to the subscribers forum use our contact form, especially if it's out of normal business hours. Remember, the more information you provide us the more likely it is we'll be able to solve the problem, start with the things suggested below.

 Please remember that we are still people that require sleep, Subscriber Forums are actively monitored and responed to by CPPL during business hours. The CPPL business hours are Monday-Friday 0800-1800 AEST.

If you don't have a paid support subscription then you will have to use the  community forums which aren't monitored by us but which we do visit occasionally.

General Information to Provide

When posting a question about any problems you may be experiencing the following things will be useful:

  • version details for
    • our software and
    • things like Joomla, PHP, mySQL etc
  • browser name, version & platform (eg. Firefox, Safari, Chrome and which platform Mac/Win)
  • check your browsers JavaScript console and provide details of any errors shown in it.
  • try alternative browser to see if it's a bad browser behaviour/plugin issue. (90% of errors come from old versions of IE on Windows.)
  • URL showing the problem
    • if no URL is available then a screen shot
  • any error messages (please cut and paste them out of your browser into the forum, don't try to remember them and type them in.)
  • turn on Joomla's debug mode and error reporting and then try to create the error again (also look at the debug output and copy and paste any relevant sections into your forum post.)

Don't use the Forum software's Private Message function (PM's)

This can't be said enough - don't use the PM function, it goes to one person only whereas we have multiple people watching the forums. We don't have the same people logging in every day so your PM may not be seen until they come back from holidays, a business trip or a pilgrimage!

Problems logging into forums

Changes in forum group memberships can sometime cause login issues due to out of date cookies or cached information held by the browser.

If you have a problem logging into the forums please try the following suggestions to see if any of them resolve the problem:

  • logout & then click the link Delete all board cookies. (It's also on the bottom of the main forum page). Login and see if that worked.
  • Logout then try to login from the websites home page
  • If you use your browser to automatically save and fill out passwords try turning that off and logging out and then back in.
  • Try a different browser, ie. if you normally use IE7 try Firefox or Safari to login with.
  • Finally if none of them have worked try resetting your password using options under the "Register" menu.

Problems uploading files or installing extensions/templates

Install Suceeded & Failed? ( "couldn't delete file xxx_xxxxxx.xxx" )

Sometime Joomla will report an error during the installation of a component, plug-in or module, in these cases it often reports that the installation both suceeded and failed to move/delete one or more files. This error is actually the Joomla! Install mechanism reporting that it didn't have permission to delete the old file before moving the new one in place, i.e. your server isn't setup correctly. To correct this you will need to fix the file permissions for the old files or manually delete the old files — in either case please make absolutely sure you know what you're doing as you could break your website by deleting the wrong file or make it vunerable to hackers if you change the wrong file permissions.

You can read more about File permissions on docs.joomla.org:

  1. Where can you learn more about file permissions?
  2. What are the recommended file and directory permissions?

Install Failed ( "couldn't move file xxx_xxxxxx.xxx" )

Sometime Joomla will report an error during the installation of a component, plug-in or module, saying that it failed to move one or more files. This error is usually the result of the /tmp directories not being setup correctly (this can often happen after moving a site or when using an IIS server). To correct this you will need to check the gobal configuration and ensure that the settings for the temporary directory are correct.

You can read more about installing extensions on docs.joomla.org:

  1. Why you can't install any extensions?

JFolder :: files: The path is not a directory.

During installation of new or updated software you can get this message. While the message is a little obscure in it's wording it generally means that Joomla! file handling system can't find the directory listed in the message.

JFolder::files: The path is not a directory. Path: /home/userac/public_html/administrator/components/com_easystagingpro

In the example message above the message literally means the Joomla!'s file handling functions can't find the directory com_easystagingpro, as this occurred during the install process it usually means that Joomla!'s com_installer function could not create the directory in the /administrator/components/. Generally in these cases it means that the file permissions for the /administrator/ directory have been changed to prevent changes (e.g. certain admin tools that provide enhanced Joomla! security will change the permissions on /administrator).

You can quickly check if Joomla! has write access to /administrator by selecting Site->System Information->Directory Permissions. In the directory list administrator/components should be Writable, if it is Unwritable then you will have to change it's permissions. If you're not sure how to do this please as your host or web developer.

If the directory is showing writable but you still get this message the next step is to look at any security software you have installed that may be affecting the process — typical causes are .htaccess files that have been added to /administrator to restrict access. You will need to follow your security softwares instructions and temporarily turn off the protections or make allowances for com_installer.

The other situation where we've encountered this is where clients have installed 3rd Party templates[1] [2] and extensions[3] that have mistakes in their XML files, in these cases you will need to contact the

Error building Admin menus

I get this error when i try to install XXX: Error building admin menus

This is actually a common issue reported by Joomla! 1.6/1.7/2.5 users, and is caused by a problem the com_installer component (the part of Joomla! that actually installs extensions, templates etc).

The component actually installs properly, but the back-end access menu items are not visible. This can be easily resolved by re-installing the software.

N.B. This can occur after an update as well as on a new installation.

Out of Memory when Processing Files?

When PHP runs out of memory while running a large application ( like a CMS with lots of bells and whistles in a dynamic template ) you will see errors with the key phrases "Fatal Error" and "Allowed memory size of XXXXXX bytes exhausted".

Contributing causes include:

  • a comparatively low memory_limit setting compared to the work you're asking the server to do.
    • 64M is considered normal for dynamic eCommerce and CMS driven websites
  • asking the server to process/unzip/compress a very large file
  • over-loading your CMS/eCommerce/Web App with lots of extensions

The easiest solution is to increase PHP's memory_limit - depending on your hosting environment there are a variety of ways to do this - click here for a Google Search to get you started. If you have no idea how to do this the best solution will be to talk to your website provider.

File Uploads

Ok, first up file uploads for those that aren't clear are the following sorts of things:

  • adding a picture on your computer to an aritcle (you upload the image file)
  • installing a new component/plug-in/temple (these items are uploaded to your website)
  • uploading data to a custom component (like PDF & JPGs to Flipbook or CSV files for use in EasyTable)

A file upload is literally the transmission of data from your computer to the web server that your website runs on.

Unlike normal activities like editing text or creating menus which send small amount of data to specific fields, file uploads send much larger amounts of data in a pre-packaged format.  Files that can be uploaded can be a variety of types, common ones include:

  • ZIP/GZ  (compressed data files)
  • JPG/PNG/GIF (images)
  • SWF, AVI, MOV, MP3, MP4 (Flash, audio & video)

As file uploads are usually self contained packages they have to be treated with much more care. As such hosting services and most CMS software have limits on what can be uploaded. Some file restrictions that you might encouter include:

  • no executable files
    • to prevent virus transmission
  • no script files
    • like PHP
    • Perl etc
    • done to prevent hacking of the website
  • no files over a specified size
    • typically ranges from 0Mb to a user configurable number
    • usually the better the host the bigger you can go

Generally the one that causes the most trouble with a CMS website is the maximum file size you're allowed to upload. In Joomla this is controlled by a PHP variable called upload_max_filesize.

The value this variable has is usually controlled by your hosting service at the cheap end of town and by yourself in the nicer hosting services.

What's my upload_max_filesize?

The default PHP value is 2M (2 megabytes), most hosting providers change it from this either up or down. There are a variety of ways to find your websites value:

  • in a WHM/CPanel system
    • Open the PHP Configuration icon PHP Configuration button in CPanel and look for the line highlighted in image below.
  • in Joomla! 1.5
    • Select the menu "Help" -> "System Info" -> "PHP Information"
    • Scroll down to the end of the PHP Core section to find the value of upload_max_filesize
  • in Joomla! 2.5
    • Select the menu "Site" -> "System Information" -> "PHP Information"
    • Scroll down to the end of the PHP Core section to find the value of upload_max_filesize
  • using a test PHP file
    • create and upload a phpinfo() file to your server (if you don't know what this means don't do it)
  • contact your hosting provider


How can I change my upload_max_filesize?

There are a range of ways including using your WHM access to change it, setting a php.ini file up and finally calling your hosting provider. We recommend you read about it because you can cause problems if you do it the wrong way.

Please beaware the changing your upload_max_filesizecan cause problems if you make it greater than or equal to your post_max_size (another PHP setting). Apart from the file you're uploading you need to allow room for the other form elements, so the size of the file + the size of other form elements (text fields, drop down items, selection boxes etc) must be less than your post_max_size.

As a starting point here's a Google search for you.


General Joomla Installation Issues

JInstaller::install: Failed to copy file

Joomla Help Menu [Select System Info]This is a common message that usually results from file or directory permissions on the hosting environment.  The easiest way to check if the problem is being caused by permission issues is to use Joomla's built-in "System Info" option in the Help menu.

When you select the "System Info" option, then you are presented with a range of information tabs about your website and the Joomla installation.

As shown in this screenshot one of the tabs you can choose is called “Directory Permissions’ - for you to be able to successfully install components, plug-ins and templates then all of these directories listed should show as “Writable”.  If they don't (the directory permission show as “Unwritable”) you will need to change the permissions for your Joomla installation.

How do I change the permissions for my Joomla installation?

Joomla Directory PermissionsFirst up - changing permissions can be dangerous. If you don't really understand permissions and ownership get the technical support staff at your hosting service to fix the permissions for you.  Specifically the webserver will need read and write access to the Joomla installation, it will also need ownership or membership of a group that owns the websites directories.

Changing permissions will depend on your website hosting setup.

  • If your host provides cPanel access you can use the “File Manager” to change the directory permissions.
  • If your host provides Shell access you can use chmod and chown to set the permissions to 755 and the group owner to the webserver's group
  • If your host has a custom control panel specific to them you may be best off opening a support ticket to get the problem resolved.

It's not my Permissions!

If your permissions are all showing as writable then the next most likely cause is that your Joomla installation is version 1.5.10 - a typical error in this case will look like this:

JInstaller::install: File
'/website/tmp/install_38bd786260b81/SomeComponent.install.php' does not exist.
Component Install: Could not copy PHP install file.

Joomla 1.5.10 had a slight change which causes this error to be thrown, it has been resolved in all subsequent versions.  The simplest solution is to upgrade to a latter (and more secure) version of Joomla 1.5.

It's not my Permissions and it's not Joomla 1.5.10

Joomla_Global_Settings_FTP_OffIf you've gotten this far and it hasn't worked the final thing to check is your “Global Configuration” for “FTP Settings”. If you have FTP enable/disbaled, flip the FTP option (set it to the opposite setting) and try again.


In our experience with our software/templates and with Third Party products these steps have resolved 99% of installation issues via the Joomla Installer.

How do I get custom development or general Joomla Support?

See People Software is a brand of Craig Phillips Pty Ltd (CPPL).

CPPL's core business is:

  • software development for:
    • iPhone applications
    • Joomla Extensions
  • devloping new websites using Open Source solutions like Joomla!
    • setup
    • on-server configuration & support
    • training
    • templates
    • public/intranet website
  • Managed Web Services
    • Maintenace
    • Managed Websites
    • Managed Services
    • Service Monitoring

The best way to get us involved is to drop us a line via our contact form!

For support for our Software please see this FAQ

What are the current software versions?

Joomla Software:

Software Public Subscribers Notes
EasyTable for J! 1.0.5a
(Click to download)
1.0.5aJoomla! 1.5 Native
(Click to go to the download area)
EOL — See below.
EasyTable Pro N/A

1.4.0 for Joomla! 3.3+ Compatible and Joomla! 2.5+ Compatible
(Click to go to the download area)


1.0.0 for Joomla! 1.5 Native
(Click to go to the download area)


1.4.0 is feature complete and failing any major issues will be the last version before the 1.5.0 Beta Release.

Please note that the version 1.3.0+ line is for Joomla! 2.5.18+ and 3.3.2+, for Joomla! 1.5 you must use the 1.0.0 version.

Please note that the version 1.2.0 line is for Joomla! 2.5, for Joomla! 1.5 you must use the 1.0.0 version.

Current version release notes.

1.0.0 is now EOL — See below.

EasyStaging 1.0.0 for Joomla! 2.5+ Compatible
(Click to go to the download area)

1.0.0 for Joomla! 2.5+ Compatible
(Click to go to the download area)

This product is only to be used by experienced website developers, it is not intended to be used by people without a technical understanding of how Joomla!, MySQL and Rsync work.
EasyGitHub Include 1.0.0 for Joomla! 2.5+ Compatible
1.0.0 for (Click to go to the download area)
1.0.0 for Joomla! 2.5+ Compatible
(Click to go to the download area)


Aug. 2012: In line with the end of life for Joomla! 1.5, support for Joomla! 1.5 compatible versions is no longer available.


Support Subscriptions

How can I pay?

Due to fraud issues and the nature of open source software at this point in time we only accept payment via PayPal. PayPal do accept most credit cards.

If you can't use PayPal then I'm sorry we can't help at this time.


If I’m not satisfied with my purchase, can I get a refund?

We want you to be fully satisfied with your purchase, so we do our best to offer the best possible products. If you aren’t 100% satisfied, please contact us so we can make things right. As our products are licensed as Open Source we do not offer refunds.

All of our subscription includes the delivery of virtual products and as such we cannot provide a refund once payment has been made. Please be aware that PayPal does not support users seeking refunds for virtual goods.

How do I download my software?

Immediately After Purchase

When you take out a support subscription for one of Joomla software products you will be returned to a confirmation page on our website and see a message similar to the one shown below. That screen shows you a link to the download area for the product you just purchased a subscription too.

Subscription Thankyou Message with Download Link

Downloading Updates

To download software made available under our subscription plans (e.g. EasyTable Pro, VirtueMart CommWeb Payment Plug-in, etc.) you must first login.

Subscriber Login Button

To login click on the "Subscriber Login" button on the top right of the See People Software website (if you don't see a button by that name but you do see one saying "Logout YourName" then you are already logged in).

Once you're logged in you will notice two differences:

  1. There is now a "My Stuff" menu available which lists your currently active subscriptions.
  2. The "Downloads" menu now lists addtional download areas that you have active subscriptions for.

Using either of those menus click on the menu item for the download you want access to, then click on the "View Releases in this Category" button to see the files available.

Downloads Menu When logged in the Downloads menu will change to show additional downloads based on your currently active subscriptions. If a subscription has expired the product will not be shown.

In the image to the left the Downloads menu has several subscription only products added to it.


My Stuff Menu multiple subscriptions. When logged in the My Stuff menu will change to show downloads based on your currently active subscriptions. If a subscription has expired the product will not be shown.

In the image to the left the My Stuff menu has several subscription only products added to it.


If you don't see the items you expect click on the "My Stuff" menu to see a listing of your currently active subscriptions. If you believe there is an error please contact us to get it rectified.

Subscription Policy

See People Software "support subscriptions" are valid for periods of 1 month (31 days) or 3 months (92 days) starting on the purchase date.

A "support subscription" provides access to our Private support forums and to the download area for the software in question.

Subscriber Downloads Area

Our download area provides access to our free and subscriber software. Current Subscribers have

  • unrestricted access to "the software" specified in the subscription
  • unrestricted access to any extras created for "the software"
  • unrestricted access to any new versions released, including major upgrades of the software
  • unrestricted access to any pre-release versions
  • active forum support for the duration of their subscription.

Our download area is available to all current subscribers 24 hours a day. Some other things you should be aware of when taking out a subscription:


A renewal gives you the option to extend your subscription for an additional period. The renewal fees are based on the software in question and the duration of the subscription. You are not required to renew your subscription and the software will continue to function once your subscription has expired. You can renew your subscription at any time to get access to the latest versions.

From time-to-time we will provide discounted renewals for users who's subscriptions are expiring. To ensure you receive any renewal discounts please make sure

  1. you renew 10 or more days before your subscription expires
  2. you login prior to filling out the Subscription form


The code is made available to you pursuant to GNU General Public License. Without limiting your rights under the GPL, the component and related documentation are subject to the terms and conditions of this end-user license agreement.

The code is not encrypted or obsficated in any way.

The code is not time or location limited in any way.


It's GPL'd so you can make any modification(s) to our products to fit your purposes without prior written consent from us. If the code is changed by you or a third party we can support the modified component on a fee for service basis.

Installation Included Subscriptions

Some subscriptions include initial installation on a single website and confiugration of the software in question.

Our aim is to make you happy with the software and services from us. If we encounter issues during installation (e.g. conflicts with other software) we will rectify the problem if it is occurring in our software. If the problem is the result of a third party extension/software - where we can identify the issue, we will notify you and the developer of the conflicting software with the aim of working with them to resolve the issue.

Of course, we cannot say what the developer of the other party may do or not do.

If the for any reason we can't work with or contact the other developer we may at our discretion offer to fix the third party software on your site free of charge if it's minor or for a minimal charge if the work is significant. We will supply the patch to the products developer regardless of their involvement.

Of course, applying a fix/patch to your installation may prevent you from updating to new versions of the third party software if they don't fix the issue themselves or apply our supplied patch.

Finally, in the event that we can't get the product working satisfactorily due to conflicts with third party software, we may decide to refund the subscription in part or fully. Any refunds will be solely at our discretion in these cases.


We have no influence on the development of Joomla! or it's related products. Our software is designed to run on the official version current at the time of sale, but we can give no guarantee that the product will run with future versions of Joomla!

When major changes occur to the Joomla platform that break our software we will make decisions about updating them based on their commercial viability — ie. if a peice of software can be updated for a viable cost we will probably do it.


For the purposes of this policy "shipping" means the electronic delivery of virtual, non-tangible software created by us.

After your payment is cleared you will be able to login and download a copy of the current version of the software from the Downloads area. (Once you're logged in new items will appear in the Downloads menu and the Downloads screen showing you the software associated with your subscription.)

Once payment has been received your account will be given access to Support Subscribers form which includes a thread to download the current version of the product. If you are unable to login and access the Support Subscribers area then contact us and we will investigate the matter for you.

NB: If you subscribe while our office is closed your account may not be activated in the Support Subscribers forum until normal business hours. We manually activate forum accounts to prevent our users from being exposed to large amounts of spam.

Refund policy

As our software is a non-tangible irrevocable item licensed under Open Source terms we do not issue refunds after the product is shipped, there are no exceptions. Please be aware that this applies to all tranactions. PayPal does not provide refunds for virtual goods or services. 

We want you to be completely satisfied with your purchase, so we do our best that we can. If you aren’t 100% satisfied with your purchase, please contact us so we can make things right.

We reserve the right to change or modify the Subscription Policy with as required and without notice, although where possible we will inform anyone subscribed to our mailing list.

What do I get in a Support Subscription?


A support subscription gives you access to the private Subscriber Forum for that specific product. Subscriber Forums are actively monitored and responed to by CPPL during business hours. The CPPL business hours are Monday-Friday 0800-1800 AEST.

Subscription Plans

At this point there are two subscription categories with several plans available in each:

  1. EasyTable Pro!
    1. Support Subscription 1 Month
    2. Support Subscription 3 Months
  2. EasyNAB Transact Direct Post for Akeeba Subscriptions
    1. Support Subscription 1 Month
    2. Support Subscription 3 Months

As the name of each plan indicates the subscription is valid for one or three months (to be precise 31 and 92 days respectively).

What do I get?

Once you sign up for the support subscription you will receive:

  • access to the Private Subscribers Forum for the duration of your subscription
  • access to the Downloads area for the current version of the software you registered for.
  • early access to new versions of the software.


The Subscriber Forum provides:

  • installation and configuration support for issues related to our software.
  • bug resolution.


Our Joomla! Extensions:

  • are GPL'd - so you can change them as you see fit
  • can be used on any of your websites
  • will continue to work even after you subscription expires.
  • can be download at anytime while your subscription is active.

What's not included?

The Support Subscription does not provide:

  • Joomla training
    • (if you're installing our extensions you really should know how to use Joomla already)
  • Host Issues support
    • The best people to talk to about issues with your hosting are your hosts.
  • On-server support
    • On-server support is not available.

My Subscription Has Expired!

Once your subscription expires you will no longer have access to:

  • the Subscribers Support forum (but you will still have access to the Community forums — community forums are not actively monitored by our staff).
  • the softwares download repository

EasyTable Pro is not affected in anyway by your subscription expiration and will continue to work.

If a newer version is available that you want, you will have to renew your subscription to gain access to the software's download repository.

How do I cancel a subscription?

We don't use recurring subscriptions, however if you have set up a recurring payment through PayPal you can refer to this PayPal Help article called "How do I cancel a subscription?" at this url:


Where can I check my account status and payment details?

When you login to the See People Software website a "My Stuff" menu appears in the Main Menu, click on this will show you your subscriptions.

From that page you can:

  1. See each subscription you have and when they expire.
  2. Upgrade/Renew your Support Subscription.
  3. Review the transaction details for each subscription.


Additionally once you're logged in many pages will show a "User Menu" in the right sidebar as well as a list of your current subscriptions and their expirey dates.

If additional information is required please contact us directly.

You need to login to access the forums.

Member Login

You need to Login to access your Subscription details or the Forums.