should FINALLY get binding correctly in light of regression caused by get_real_fields...
authorivan <ivan>
Thu, 3 Jul 2008 04:19:31 +0000 (04:19 +0000)
committerivan <ivan>
Thu, 3 Jul 2008 04:19:31 +0000 (04:19 +0000)
FS/FS/Record.pm

index aef550d..b9fb2ae 100644 (file)
@@ -302,15 +302,15 @@ sub qsearch {
     $value = $value->{'value'} if ref($value);
     my $type = dbdef->table($table)->column($field)->type;
     if ( $type =~ /(int|(big)?serial)/i && $value =~ /^\d+(\.\d+)?$/ ) {
-      $sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_INTEGER } );
+      $sth->bind_param($bind++, $value, { TYPE => SQL_INTEGER } );
     } elsif (    ( $type =~ /(numeric)/i     && $value =~ /^[+-]?\d+(\.\d+)?$/)
               || ( $type =~ /(real|float4)/i
                      && $value =~ /[-+]?\d*\.?\d+([eE][-+]?\d+)?/
                  )
             ) {
-      $sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_FLOAT } );
+      $sth->bind_param($bind++, $value, { TYPE => SQL_FLOAT } );
     } else {
-      $sth->bind_param($bind++, $record->{$field}, { TYPE => SQL_VARCHAR } );
+      $sth->bind_param($bind++, $value, { TYPE => SQL_VARCHAR } );
     }
   }