if($rows == 0) {
# No existing records found for this individual, make a new entry
print " Adding new individual: $individual_name\n";
- $sth = $dbh->prepare("insert into tc_individual values (NULL,'$id',\"$individual_name\",'$address','$phone','$email','$hhposition','$priesthood',NULL,$attending,1)");
+ $sth = $dbh->prepare("insert into tc_individual values (NULL,'$id',\"$individual_name\",'$address','$phone','$email','$hhposition','$priesthood','',NULL,$attending,1)");
$sth->execute or die "-E- DB error: $DBI::errstr\n";
} elsif($rows == 1) {
# An existing record was found for this individual, update it
# find head of households in tc_individual
$sth = $dbh->prepare("SELECT * FROM tc_individual WHERE hh_position='Head of Household' and valid=1");
$sth->execute or die "-E- DB error: $DBI::errstr\n";
- while ($sqlhashref = $sth->fetchrow_hashref) {
- $individual = $sqlhashref{individual};
- $name = $sqlhashref{name};
+ my @individual_data = ();
+ while ($sqlhashref = $sth->fetchrow_hashref) { push(@individual_data, $sqlhashref); }
+ my $individual_count = scalar @individual_data;
+ for($i=0;$i<$individual_count;$i++) {
+ $individual = $individual_data[$i]{'individual'};
+ $name = $individual_data[$i]{'name'};
$sth2 = $dbh->prepare("SELECT * FROM tc_family WHERE individual='$individual'");
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
if($rows == 0) {
# No existing records found for this family, make a new entry
print " Adding new Family: $name\n";
- $sth2 = $dbh->prepare("insert into tc_family values (NULL,'$individual','0',NULL,1)");
+ $sth2 = $dbh->prepare("INSERT INTO tc_family VALUES (NULL,'$individual','0',NULL,1)");
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
} elsif($rows == 1) {
# An existing record was found for this family, update it
print " Updating existing family: $name\n";
- $sth2 = $dbh->prepare("update tc_family set valid='1' where individual=$individual'");
+ $sth2 = $dbh->prepare("UPDATE tc_family SET valid='1' WHERE individual='$individual'");
$sth2->execute or die "-E- DB error: $DBI::errstr\n";
} else {
# More than one record was found. Error! This shouldn't happen.
print " Updating visit data: $family_name\n";
# get family id from tc_family
- $sth = $dbh->prepare("select * from tc_family where name=\"$family_name\" and valid=1");
+ $sth = $dbh->prepare("SELECT * FROM tc_family AS tf JOIN tc_individual AS ti WHERE tf.individual=ti.individual AND ti.name=\"$family_name\" AND tf.valid=1");
$sth->execute or die "-E- DB error: $DBI::errstr\n";
my @family_data = ();
while($sqlhashref = $sth->fetchrow_hashref) { push(@family_data, $sqlhashref); }
`organization` varchar(30) default NULL,
`position` varchar(30) default NULL,
`sustained` varchar(30) default NULL,
+ KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
--
--
CREATE TABLE `tc_family` (
`family` int(16) unsigned NOT NULL auto_increment,
- `hofh_id` int(16) unsigned NOT NULL default '0',
- `name` varchar(30) NOT NULL default '',
- `name_id` varchar(30) NOT NULL default '',
`individual` int(16) unsigned default '0',
`companionship` int(16) unsigned default NULL,
`scheduling_priority` int(16) unsigned default NULL,
`date` date default NULL,
`notes` text,
`interview_type` enum('hti','ppi') NOT NULL DEFAULT 'hti',
- PRIMARY KEY (`ppi`)
+ PRIMARY KEY (`interview`)
) ENGINE=MyISAM AUTO_INCREMENT=248 DEFAULT CHARSET=latin1;