If it were me, I would first create a role for members. I would have each member register and then have an officer assign them the role
I would then use the views module to display a list of members by using a filter by role. That would allow a list of members to be shown.
Then, I would create an
attendance table and a
meeting table in the database. (You can do this through the next step if you want to learn how to create drupal db
schema. I would probably have the fields:
attendance table would have:
When a user attends, you create a reference to the
meetingId from the
meeting table and create an enter with the drupal user id. When you want to know who selected a given meeting, you select all userId's from the
attendance table matching the
I would then write a simple module that uses the
forms api to create a meeting. Then, you would have another page that lists all of the users by selecting all the ones with the
member role and again using the
forms api you would add an entry for the
attendance table for each person that was there.
So there would be one link and two coded pages now... one link to "view meetings" which would show all of the meetings. If you click on a meeting, you would be taken to the page which displays users. If the meeting was in the past (meaning some historical data exists), it should have historical attendance data. You can handle that in one of two ways... either show them the historical data and do not allow edits, or you show your original form but populate the check boxes of people that attended. Otherwise, it is a new meeting and should just display the form. If it were me, I would allow edits and it simplifies the page because it is the same form, just populated with check-boxes if there is any data.
This is an excellent opportunity to learn how to write a module. It is very simple yet complex enough to show you the ins an outs of creating a Drupal module. Also, it has a clear and definable end result which will either work or won't.
You can check out the schema module for help creating the database tables through the module. This is a good thing to learn.
If you want to go one step further, you can expose your tables to views and use the views module to create the display portions of your data. Although you will still need to create the forms on your own.
Update: Thought, you could also add a
notes column to the meetings so people could enter and save notes. Also, your imagination is the limit here. All sorts of other things could be done. However, I would keep it as simple as you can stand for your first module.