Index: store.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/ecommerce/store/store.module,v
retrieving revision 1.44.2.16
diff -u -r1.44.2.16 store.module
--- store.module	21 Feb 2006 04:19:13 -0000	1.44.2.16
+++ store.module	9 Mar 2006 01:42:30 -0000
@@ -542,10 +542,10 @@
       $paid = TRUE;
     }
 
-    foreach ($edit as $key => $value) {
-      if (in_array($key, $transaction_fields)) {
+    foreach ($transaction_fields as $key) {
+      if (isset($edit[$key])) {
         $q[] = db_escape_string($key) ." = '%s'";
-        $v[] = $value;
+        $v[] = $edit[$key];
       }
     }
     if (is_array($q) && is_array($v)) {
@@ -573,10 +573,10 @@
         }
         $item->data = serialize($item->data);
         unset($q, $v);
-        foreach ($item as $key => $value) {
-          if (in_array($key, $product_fields)) {
+        foreach($product_fields as $key) {
+          if (isset($item->$key)) {
             $q[] = db_escape_string($key) ." = '%s'";
-            $v[] = $value;
+            $v[] = $item->$key;
           }
         }
         db_query('UPDATE {ec_transaction_product} SET '. implode(', ', $q) ." WHERE txnid = '". $edit['txnid'] ."' AND nid = '".$item->nid  ."'", $v);
@@ -612,10 +612,10 @@
 
     $edit['txnid'] = db_next_id('{ec_transaction}_txnid');
 
-    foreach ($edit as $key => $value) {
-      if (in_array($key, $transaction_fields)) {
+    foreach ($transaction_fields as $key) {
+      if (isset($edit[$key])) {
         $k[] = db_escape_string($key);
-        $v[] = $value;
+        $v[] = $edit[$key];
         $s[] = "'%s'";
       }
     }
@@ -649,10 +649,10 @@
         $item->ptype = db_result(db_query('SELECT ptype FROM {ec_product} WHERE nid = %d', $item->nid));
 
         unset($k, $v, $s);
-        foreach ($item as $key => $value) {
-          if (in_array($key, $product_fields)) {
+        foreach ($product_fields as $key) {
+          if (isset($item->$key)) {
             $k[] = db_escape_string($key);
-            $v[] = $value;
+            $v[] = $item->$key;
             $s[] = "'%s'";
           }
         }
