[Phpmyadmin-devel] Ajaxification of PMA

Rouslan Placella rouslan at placella.com
Sat Dec 17 15:35:13 CET 2011

On 17/12/11 13:53, Marc Delisle wrote:
> Le 2011-12-17 01:00, Thilanka Kaushalya a écrit :
>> Hi Marc,
>> It was a great gsoc session with PMA last time. I could not contribute it
>> for last few months(after gsoc) because I had my final year exam at
>> university. I'm willing to continue my contribution to phpMyadmin as a non
>> gsoccer. Are there any remaining ideas to continue with ajaxification of
>> the PMA. If so I like to open a discussion on them and continue with them.
>> Thank you.
>> Regards,
>> Thilanka.
> Hi Thilanka,
> some items are listed on [0], please pick one and discuss it on this list.
> [0] http://wiki.phpmyadmin.net/pma/AJAXify_Interface

Hi Thilanka,

off the top of my head I can think of an issue that can be solved with 
some ajaxification. On tbl_structure page, if you use the "Add * index" 
actions that are available in the "More" dropdown corresponding to a 
column in the top table. You will be dropped to sql.php, which will show 
the table structure page, but it will not include "tbl_structure.js", so 
all the ajax actions on this page will be broken. Of course, if the "Add 
* index" links would be ajaxified, this would no longer be a problem, 
because we would not leave the tbl_structure page.

Please do not take the following badly, but rather as constructive 
criticism and as a way to learn from your mistakes. I find that some of 
the ajaxification work that you did this summer was less then optimal. 
As an example, let's look at some issues with the work that you did on 
the index editor.

First of all, you create a custom slider to hide the indexes table. This 
was unnecessary, because we already have a PHP function that takes care 
of this, which also respects the $cfg['InitialSlidersState'] 
configuration setting.

Another issue was that in every ajax reply the top menu was included and 
then removed from the reply via jQuery. This, of course, causes transfer 
of waste data and it's better not to send it in PHP altogether.

Then there was an issue when a user requested to add a column to the
index editor: the browser fired an HTTP request of the form to the
server, just to get the same form back with an extra empty field. Of
course, this action can be done on the client side by just cloning a row
from the table.

So, I fixed all of the above and I also cleaned up the layout of the 
editor in order to use less horizontal space and appear more 
user-firendly. I invite you to look at these changes so that you can 
learn from them. It's commit 863819cbdd759 and the following 10 commits 
after that.

By the way, if you need a mentor or just some guidance, please feel free 
to contact me at any time. I would be glad to help you with any issues 
you may have and/or review your code.


More information about the Developers mailing list