24May03
HAM LOG SOFTWARE
Ward Willats / KG6HAF / ward@kg6haf.com
INTRODUCTION
''''''''''''
In late 2002 and early 2003 I started a rewrite of phpHamLog. This
archive contains the PHP and mySQL source code for the system. I never
finished development however, as once I got things displaying nicely I
just generated an ugly little editor using phpMyEdit and never
completed an integrated editing form of my own. All of the
architecture for it is roughed in, however.
phpHamLog lives on SourceForge at:
http://sourceforge.net/projects/phphamlog/
As I wrote on my web site in late 2002, I wanted a simple station
logging program I could use to make my log available to everyone. As a
new ham, my needs were simple, so I just needed some basic record
keeping and the ability to deploy on the web. Not getting locked into
a proprietary Windows solution would be a plus too.
phpHamLog looked like what I wanted, but the source for that was in
tough shape. My log differs from it in these respects:
* Uses PHP objects (instead of procedural code) to encapsulate
program functions. Object oriented.
* Strict separation of code, HTML and styles.
* Uses stylesheets for appearance control. No tables.
* Separates editing and viewing functions so they can be deployed
separately. (Typically, only the site administrator/control operator
needs to see and use editing features.)
* Since I separated the editing stuff out, I removed the PHP session
logic and login requirements. Editing access control is provided by
Apache realm authentication, and by deploying editing scripts in
protected directories
To make porting easier, I have kept the phpHamLog database schema,
even though the "qso" table used is non-normalized and cumbersome.
This is free software released under the GNU Public License.
INSTALLATION
''''''''''''
Requirements: I developed this on a Debian Linux box running mySQL
3.23 and PHP 4.1.2. I didn't make any extrodianry effort to support
PHP 3. I assume you have PHP, mySQL and Apache installed.
1. Expand the archive into a directory on your web server.
2. Create the "qso" table. I've included the file "logbook.sql" you
can feed into mysql to do this. This is the same database structure
used by phpHamLog, so if you have that installed already you don't
need to do anything.
Example:
mysql -p < logbook.sql
The ituzones table in logbook.sql is not used by this system, but
phpHamLog made it and so I do too. You can drop it if you want.
3. Edit CConfig.php and provide mysql host, username and access
info. Also plug in your main callsign.
4. Configure PHP include path to look in both the directory you
unpacked the archive into, and the "admin/" subdirectory. You can do
this with an .htaccess file, a php.ini file, or in Apache's
httpd.conf. I use the latter.