Author: eugenio tacchini
Posted on: 2012-05-09
Categories: PHP Tutorials
Read this article to learn more about DaDaBIK and how you can use it to productively create your PHP applications.
By eugenio tacchini
The PHPClasses site blog is read by many tens of thousands of PHP developers around the world.
This blog is open for Open Source developers to tell more about their projects, so they can attract more users that may contribute with feature suggestions, and bug reports or improvement patches.
The blog also accepts paid sponsorships for publishing articles about commercial products that may be of the interest of the PHP developers.
If you would like to write an article like this one about and Open Source project or a sponsored commercial product you would like to get more exposure, contact the site to get more information on how to submit a properly written article about your project.
Writing CRUD database front-ends and simple database applications is a very common task that almost all PHP developers need to implement. It is usually a simple job to accomplish, but is also time consuming, boring and error-prone to implement.
Software developers tend to avoid time wasting and repetitive tasks in favor of more challenging tasks. This lead to the development of applications with the goal to automate front-end development.
DaDaBIK is one of the precursors of this kind of applications for automated creation of PHP front-ends. Released initially in the year 2000 by myself, Eugenio Tacchini, the project continues to be actively developed until today.
The projects long history of development allowed it to reach important goals in terms of stability and popularity, with hundreds of thousands downloads, adoption by big organizations, and translation of the application to 17 languages thanks to the help of many volunteers.
- Set a few configuration parameters in the config.php file (database host address, database user, database password, etc... )
- Install DaDaBIK running install.php;
- Configure your final application through a graphical interface, executing admin.php.
The time you need to finalize your work obviously depends on the number of tables involved and on the level of customization you need, but a simple front-end for inserting, updating, deleting and searching records can be ready to use for you or your users in a few minutes.
- The label
- The HTML input type (a textbox, listbox, file upload, etc...)
- The allowed content (alphanumeric, numeric, e-mail, etc...)
- The possible values, eventually taken from another table (foreign key support)
- If the field should be to be displayed and in which forms
Customization of a form field
Other features include master/detail views, export to CSV, checking for possible duplication during insertion, authentication and authorization restrictions on view, update, delete actions, e-mail notifications.
Before using DaDaBIK many users ask about eventual similarities with PHPMyAdmin. These two applications are actually very different. DaDaBIK was not created to provide complete administration of a database, but rather to allow the creation of a customizable and user friendly database applications.
- Creating data entry Web applications
- Creating back-end administration pages for Web sites
- Provide public Web access to archives of data
For an example of the latter, see the World Oral Literature Project by the University of Cambridge.
For a complete tutorial I have produced this video that gives a live step by step demonstration on how to use DaDaBIK to build a common CRUD based PHP database application. This is the first episode of a series of video tutorials about DaDaBIK available on YouTube.
Further information, documentation and instructions on how to download the application can be found in the official DaDaBIK Web site.
If you have other questions not answered here, feel free to post a comment on this article.
You need to be a registered user or login to post a comment
1,403,430 PHP developers registered to the PHP Classes site.
Be One of Us!
Login Immediately with your account on: