FIX: Incorrect values inserted in database. used '$a' instead of $a
[srvgit] / insertidata.pl
index 5120135..f2558fe 100755 (executable)
@@ -23,7 +23,7 @@
 # Suite 330, Boston, MA  02111-1307 USA
 
 use CGI;
-use C4::Database;
+use C4::Context;
 use C4::Input;
 use Date::Manip;
 use strict;
@@ -42,27 +42,45 @@ my $env;
 foreach my $key (@names){
   $data{$key}=$input->param($key);
 }
-my $dbh=C4Connect;
-my $surname=$data{'institution_name'};
-my $query="insert into borrowers (title,expiry,cardnumber,sex,ethnotes,streetaddress,faxnumber,
-firstname,altnotes,dateofbirth,contactname,emailaddress,dateenrolled,streetcity,
-altrelationship,othernames,phoneday,categorycode,city,area,phone,borrowernotes,altphone,surname,
-initials,ethnicity,borrowernumber,guarantor,school) 
-values ('','$data{'expiry'}','$data{'cardnumber_institution'}',
-'','$data{'ethnotes'}','$data{'address'}','$data{'faxnumber'}',
-'$data{'firstname'}','$data{'altnotes'}','','$data{'contactname'}',
-'$data{'emailaddress'}',
-now(),'$data{'streetcity'}','$data{'altrelationship'}','$data{'othernames'}',
-'$data{'phoneday'}','I','$data{'city'}','$data{'area'}','$data{'phone'}',
-'$data{'borrowernotes'}','$data{'altphone'}','$surname','$data{'initials'}',
-'$data{'ethnicity'}','$data{'borrowernumber'}','','')";
-
+my $dbh = C4::Context->dbh;
+my $query="Select * from borrowers where borrowernumber=$data{'borrowernumber'}";
+my $sth=$dbh->prepare($query);
+$sth->execute;
+if (my $data2=$sth->fetchrow_hashref){
+       $query="update borrowers set title='$data{'title'}',expiry='$data{'expiry'}',
+       cardnumber='$data{'cardnumber_institution'}',sex='$data{'sex'}',ethnotes='$data{'ethnicnotes'}',
+       streetaddress='$data{'address'}',faxnumber='$data{'faxnumber'}',firstname='$data{'firstname'}',
+       altnotes='$data{'altnotes'}',dateofbirth='$data{'dateofbirth'}',contactname='$data{'contactname'}',
+       emailaddress='$data{'emailaddress'}',dateenrolled='$data{'joining'}',streetcity='$data{'streetcity'}',
+       altrelationship='$data{'altrelationship'}',othernames='$data{'othernames'}',phoneday='$data{'phoneday'}',
+       city='$data{'city'}',area='$data{'area'}',phone='$data{'phone'}',
+       borrowernotes='$data{'borrowernotes'}',altphone='$data{'altphone'}',surname='$data{'institution_name'}',
+       initials='$data{'initials'}',physstreet='$data{'streetaddress'}',ethnicity='$data{'ethnicity'}',
+       gonenoaddress='$data{'gna'}',lost='$data{'lost'}',debarred='$data{'debarred'}',
+       textmessaging='$data{'textmessaging'}', branchcode = '$data{'branchcode'}',
+       zipcode = '$data{'zipcode'}',homezipcode='$data{'homezipcode'}'
+       where borrowernumber=$data{'borrowernumber'}";
+} else {
+       my $surname=$data{'institution_name'};
+       $query="insert into borrowers (title,expiry,cardnumber,sex,ethnotes,streetaddress,faxnumber,
+       firstname,altnotes,dateofbirth,contactname,emailaddress,dateenrolled,streetcity,
+       altrelationship,othernames,phoneday,categorycode,city,area,phone,borrowernotes,altphone,surname,
+       initials,ethnicity,borrowernumber,guarantor,school,branchcode,zipcode,homezipcode)
+       values ('','$data{'expiry'}','$data{'cardnumber_institution'}',
+       '','$data{'ethnotes'}','$data{'address'}','$data{'faxnumber'}',
+       '$data{'firstname'}','$data{'altnotes'}','','$data{'contactname'}',
+       '$data{'emailaddress'}',
+       now(),'$data{'streetcity'}','$data{'altrelationship'}','$data{'othernames'}',
+       '$data{'phoneday'}','I','$data{'city'}','$data{'area'}','$data{'phone'}',
+       '$data{'borrowernotes'}','$data{'altphone'}','$surname','$data{'initials'}',
+       '$data{'ethnicity'}','$data{'borrowernumber'}','','','$data{'branchcode'}','$data{'zipcode'}','$data{'homezipcode'}')";
+}
 
 #print $query;
-  my $sth2=$dbh->prepare($query);
-  $sth2->execute;
-  $sth2->finish;
+my $sth2=$dbh->prepare($query);
+warn "==> $query";
+$sth2->execute;
+$sth2->finish;
 #$sth->finish;
 
-$dbh->disconnect;
 print $input->redirect("/cgi-bin/koha/moremember.pl?bornum=$data{'borrowernumber'}");