I've been preparing the introduction of an internet application designed in PHP while using CakePHP framework. This application is going to be heavily determined by a SQL database. The main intent from the application would be to provide HTML forms for adding, controlling, and getting rid of data out of this database. It will likely be a descent sized database (1-2 dozen tables) and you will see a great number of links together. Could also be some confirming around the data (want to export to Stand out/CSV or similar).

Here is my question, does anybody understand what solution might be best for this kind of situation? If the application was created fully in PHP/CakePHP it might take quite some time to build up by an individual and require input of the developer to includeOreliminateOrrevise the database structure/fields. However can offer a lot more custom interface customized for the requirements of the applying and it'll be internet based (accessible anywhere). But you will find also solutions for example Filemaker Professional that may give a similar solution. Does anybody have knowledge about such programs and solutions?

I develop web programs using CakePHP and MySQL Full-time for my current employer, so I'll attempt to answer the questions you have from experience:

does anybody understand what solution might be best for this kind of situation?

Any PHP Framework is a superb solution for the problem model. I favor CakePHP since it enables me to quickly deploy programs, also it favors convention over configuration.

If the application was created fully in PHP/CakePHP it might take quite some time to build up by an individual and require input of the developer to includeOreliminateOrrevise the database structure/fields.

From what you are saying, the application is going to be mainly a CRUD application. A CakePHP installation comes standard using the features you'll need with this. Better still, you should use the CakePHP Console to "Bake" the application. This can automagically generate all your Models and Remotes, and every one of the sights you will have to add/update/remove records in the tables.

The only real preparation you have to Bake the application is going to be:

  1. Creating the Database
  2. Naming all your tables following conventions in the documentation.
  3. Making certain you've all your foreign secrets within the proper place, following naming conventions.

At this time the Bake Console will make a start building models, finding associations, and producing code for CRUD procedures. You heard right, you will be 70-90% DONE (according to your present, vague specifications) using the functionality within ten minutes after building the database. After that you will have to flesh things out with your personal designs, security, and functionality like confirming.

It truly is easy.

Since I have stated all that, you will need to know a few things:

  1. To correctly optimize CakePHP configuration takes a little of expertise and/or miracle. Having your application ready to go is really a veritable easy. Which makes it run well takes some effort to make certain you utilize guidelines. Look for versions on "Optimize CakePHP" in the search engines and evaluate the blogs you discover.
  2. The Containable Behavior is really a blessing along with a curse. Go ahead and, place it inside your AppModel to create everything "Containable." But, do not use containable to locate data from deeply connected models. Cake will barf out a couple of hundred (or 1000) Choose queries, as well as your application will begin to crawl/fail.