I recently discovered an Ajax CRUD library which makes CRUD operations positively painless: AjaxCRUD
Its features include:
- displaying list in an inline-editable table
- generates a create form
- all operations (add,edit,delete) handled via ajax
- supports 1:many relations
- only 1 class to include!!
I highly recommend you try it out!
Here is the example code:
# the code for the class include ('ajaxCRUD.class.php'); # this one line of code is how you implement the class $tblCustomer = new ajaxCRUD("Customer", "tblCustomer", "pkCustomerID"); # don't show the primary key in the table $tblCustomer->omitPrimaryKey(); # my db fields all have prefixes; # display headers as reasonable titles $tblCustomer->displayAs("fldFName", "First"); $tblCustomer->displayAs("fldLName", "Last"); $tblCustomer->displayAs("fldPaysBy", "Pays By"); $tblCustomer->displayAs("fldDescription", "Customer Info"); # set the height for my textarea $tblCustomer->setTextareaHeight('fldDescription', 100); # define allowable fields for my dropdown fields # (this can also be done for a pk/fk relationship) $values = array("Cash", "Credit Card", "Paypal"); $tblCustomer->defineAllowableValues("fldPaysBy", $values); # add the filter box (above the table) $tblCustomer->addAjaxFilterBox("fldFName"); # actually show to the table $tblCustomer->showTable();