views:

217

answers:

5

I have a MySQL database that has a few very simple tables.

I would like to find an app (implemented in Perl, Python or PHP) that will do the following:

  1. Point the app to a database table, and it automatically retrieves the table's schema from the database.
  2. It then generates an HTML view of the table's data. The data is displayed as a grid, with all fields being user-editable. If there are a lot of rows, then it automatically provides pagination.
  3. Bonus points for allowing the user to click a column heading, which would then sort the data by that column.
  4. Bonus points for allowing the data to be filtered by a "where" clause.

I have already looked at a few packages (phpMyAdmin, webmysql), but they do not seem to provide the editable table view. They seem more oriented towards database administrators. What I need is something that's more oriented towards someone who wants to view, enter and modify data.

+2  A: 

CakePHP's Bake Functionality can accomplish this. But it may not be as trivial to do as you want.

Mike B
A: 

See if Java NakedObejcts is what you want. http://www.nakedobjects.org

Zak
It looks cool, but the server I'm using has Perl, Python and PHP, but no java.
Mike W
+1  A: 

If you can use groovy then Grails can get you jump started. It will build an ORM of your entire DB, build views and your basic CRUD is all built in.

If you have a real aversion to anything thats Java-based then perl's Catalyst can help build all your mappings but might not get you the whole 9 yards. You will need to write some of your basic CRUD, which is easy and can be accomplished by simple following the Catalyst tutorial.

ankimal
+2  A: 

Use CakeApp.com, it does exactly what you want!

powtac
HOLLY SMOKES! I likee! Thanks man, I bet you I've across it and had no idea what I was looking at!
vector
A: 

Thanks for the responses, but none of those exactly fit the bill, so I decided to implement it myself.

The result is a new open source project called DWI, which stands for Database Web Interface. It took me about 3 days to get it working, and I did it in about 600 lines of PHP and javascript.

If you want to check it out, it's located at http://code.google.com/p/dwi.

Mike W