Quicksilver has asked for the wisdom of the Perl Monks concerning the following question:
I'm currently working on a part of programme designed to update a form which we are updating the Perl. However the person who started this update has left the company and I'm a novice at Perl (at the moment).
There are two arrays set up with the form fields and map to some of the database columns in MySQL.
my (@ffs) =("txtName", "txtCreated","txtDateren","txtOldname","txtDel" +); my (%cols) = ("txtName"=>"Listname", "txtCreated"=>"DateCreated","txtD +ateren"=>"DateRenamed", "txtOldname"=>"OldListname","txtDel"=>"DateDeleted");
In the add and amend routines, we are try loop through the fields, define the non-empty ones and put them into a variable which is then placed inside the relevant spot in the SQL query to be passed to the db.
foreach(@ffs) { if($fd{$_} eq ""){ $updatestring = "$updatestring,[$cols{$_}] = NULL"; } else{ $updatestring = "$updatestring,[$cols{$_}] = \'$fd{$_}\'"; } }
SQL statement:
my $sth = $db->prepare("UPDATE table SET $updatestring WHERE tbl.field + = '$lname'");
I have tested the SQL directly on the database and this is working but the $updatestring doesn't seem to be reaching the db at all.
I suspect that I have set up the foreach loop incorrectly so that the SQL is not seeing the correct parts of the form.
I'd be very grateful for some pointers in the right direction.
Thanks.
Edit: g0n - code tags and formatting
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Looping an array and placing into SQL
by jhourcle (Prior) on May 22, 2007 at 16:01 UTC | |
|
Re: Looping an array and placing into SQL
by thezip (Vicar) on May 22, 2007 at 16:27 UTC | |
by Quicksilver (Scribe) on May 23, 2007 at 14:49 UTC | |
|
Re: Looping an array and placing into SQL
by naikonta (Curate) on May 23, 2007 at 15:55 UTC |