phpmyfamily: install and whine

I’ve been searching for a simple genealogy tool for recording family data. I thought GRAMPS might do the trick. Problem is, I kept having to start the same project over and over, to input the same data again and again as I moved from one physical computer to another. The solution was obvious: use a web-based application instead. After browsing the possibilities, I settled on phpmyfamily for its simplicity, GEDCOM export compatibility, and open-sourceness.

The install of the current version (1.4.1) crapped out, however.

It should be possible to run phpmyfamily on any webserver that supports PHP and can access a MySQL database. It is currently being developed on PHP 4.3.3 but should be compatible with any version from 4.2.0 onward.
http://www.phpmyfamily.net/install.php

“Should be” … with a few minor changes. My hosting service provides PHP 4.2.2 only. I had to make the following modifications to get phpmyfamily up and running.

admin/install.php
-   set_include_path('..');
+   ini_set('include_path', ini_get('include_path').':..');

inc/functions.inc.php
-   $value = "'" . mysql_real_escape_string($value) . "'";
+   $value = "'" . mysql_escape_string($value) . "'";

gedcom.php
-   $person = mysql_real_escape_string($_REQUEST["person"]);
+   $person = mysql_escape_string($_REQUEST["person"]);

Other problems were answered by the amazingly short phpmyfamily FAQ.

One thing phpmyfamily lacks is a way to add customized attributes to individual records. You can add information to a “Notes” field, but organization and interpretation of the data is unenforceable. For example, I want to add the Chinese names of family members as aliases, but there is no obvious way of doing so. The ALIA “tag” in the GEDCOM specification allows for aliases, but phpmyfamily only supports a limited subset the spec. Another glaring omission: there is no way to document information sources, a show stopper for serious researchers in the genealogical research community.

In thinking about how to hack around this (edit the “Notes” field as xml?), I encountered the GEDCOM XML 6.0 beta specification, set to supercede the current plaintext 5.5 spec Any Time Now. (More like stumbled upon … entirely because the 5.5 spec documentation was only made available as a Windows .exe!) Wouldn’t it be nice to be able to export all of the data from phpmyfamily as xml conforming to the 6.0 spec? The export process could include a validating conversion of any information stored in the “Notes” field. Heck, phpmyfamily might even be written to use xml instead of MySQL entirely! Displaying an individual’s pedigree would then be as simple as splicing a few nodes together and applying an xsl transform.

Ideas, ideas …

References:

XML Data Migration Case Study: GEDCOM
GEDCOM XML 6.0

Leave a Reply


Bad Behavior has blocked 243 access attempts in the last 7 days.