Basebuilder

Questions? Comments? basebuilder-users@lists.sourceforge.net
Sourceforge Project Page
Download Basebuilder (version 2.0.1 is
the recommended version for use)
Try out the demo - username is "demo" and password is "demo"
View the INSTALL.txt or Documentation
Post a bug report
What is Basebuilder?
How can Basebuilder help me?
What are the built-in features?
How can I customize the layouts?
What other features are available?
NEW!
July 11, 2007: Over a year's worth of bug fixes have been put together for the 2.0.1 release. Get it here!
May 22, 2006: After a year in production, we have finally released the official 2.0 file release. Get it here!
February 14, 2005: Basebuilder demo is available. The demo only has a regular user-level account
available. The full admin features allow you to do too much damage to the database to make it worth providing
that level of access on a demo server. You can access the demo here. To
login, user: demo, pass: demo.
February 14, 2005: Basebuilder version 2.0 Beta release is now
available!. Loads
of bug fixes. Check out the Release Notes,
Change Log, and To Do list for
more information. Also, check out the Version 2 documentatione here.
January 26, 2005: Basebuilder version 2.0 Alpha release is now
available!. Loads
of new changes. Check out the Release Notes,
Change Log, and To Do list for
more information. In addition, a very rough draft of the Version 2 documentation is available
here.
December 23, 2004: Basebuilder version 1.03 is now
available!
There are a number of bug fixes in addition to the introduction of two new events -
after_insert and after_update. Check out the Change Log for
more information.
Basebuilder is a database framework, like Microsoft Access or Filemaker,
designed to help you build custom, web-based databases. It is not a database
(although it comes with a sample database designed for organizers that is fully functional). It is
written in the PHP programming language and is designed to use the MySQL
database.
Basebuilder was initially created by May First Technology Collective as a way to build web-based open source databases as easily and quickly as we were able to build Microsoft Access databases for the social justice organizations that we work with. Basebuilder was initially written in the Fall of 2001. It was released on SourceForge in May 2004.
Basebuilder will automatically create html-based layouts based on your
existing database tables, providing you with an easy to use web-based
interface to your database in minutes.
- Three ways to search:
- Simple search - allows you to enter a single word or phrase which is searched against one or several fields (as specified by you) in a single table
- Search by layout - allows you to search any field in a given table - boolean and/or is allowed
- Advanced search - allows you to enter a SQL statement or build one using a visual SQL statement builder
- Saved searches - all searches can be saved for later use
- Automatically generated and sroll-able results - search or browse results are displayed 20 per page (customizable by you) with the number of returned results is displayed along with forward and backward arrows to scroll through the pages.
- Ability to add relationships between tables with automatic cascading deletes.
- Ability to add as many users as you want. Each user is assigned to a database username, allowing you to give different users different levels of access to the database.
- Ability to create full database backups on the server and download them to your desktop.
Each table has three layouts:
- list - The list layouts is used to display multiple records from the table at the same time
- detail - The detail layout displays one record in read-only mode
- form - The form layout displays one record in edit mode OR allows you to enter a new record OR allows you to search the database by entering search criteria
Each layout consists of two files:
- layout.ihtml - This file is a html template file (Basebuilder uses PHPLib's Template class). You can modify the html as much as you like. You can add dynamic content by inserting variables enclosed in curly braces. Any variable enclosed in curly braces that matches the name of a field in the table will be replaced with the value of that field.
- properties.xml - This is an xml file that controls what is displayed in the layout. It includes the SQL statement used to generate the content of the layout as well as other properties (see the manual for full details).
With Basebuilder, you can:
- Create sublayouts - for example you can have a contact record that also displays a list of all donations that contact has made.
- Write your own event code - Basebuilder includes hooks for events, such as "on update," "on insert", "on search," etc. You can write your own PHP scripts that will be executed on a layout based on these events.
- Write your own scripts - Basebuilder includes hooks for full fledged PHP scripts for generating your own queries and reports, allowing you to do whatever you want. The default installation comes with two scripts, one for downloading data in a tab or comma-delimited format and another for automatically sending email to contacts in a table.