OSDN Git Service

Model::Users: fix _select_rows method
authorhylom <hylom@users.sourceforge.jp>
Fri, 28 Oct 2016 19:04:53 +0000 (04:04 +0900)
committerhylom <hylom@users.sourceforge.jp>
Fri, 28 Oct 2016 19:04:53 +0000 (04:04 +0900)
src/newslash_web/lib/Newslash/Model/Users.pm

index cda0c9a..50648fb 100644 (file)
@@ -152,12 +152,12 @@ sub select {
 }
 
 sub _select_rows {
-    my ($self, $sql, $key, $value) = @_;
+    my ($self, $sql, $value) = @_;
 
     my $dbh = $self->connect_db;
     my $sth = $dbh->prepare($sql);
-    $sth->execute($key, $value);
-    my $rs = $sth->fetchall_arrayref({});
+    $sth->execute($value);
+    my $rs = $sth->fetchall_arrayref(+{});
 
     $sth->finish;
     $dbh->disconnect();
@@ -169,9 +169,9 @@ sub _acl {
     my ($self, $key, $value) = @_;
     my $sql = <<"EOSQL";
 SELECT * FROM users_acl
-  WHERE ? = ?
+  WHERE $key = ?
 EOSQL
-    my $rs = $self->_select_rows($sql, $key, $value);
+    my $rs = $self->_select_rows($sql, $value);
     return if (@$rs == 0);
 
     my $ret = $rs->[0];
@@ -182,9 +182,9 @@ sub _info {
     my ($self, $key, $value) = @_;
     my $sql = <<"EOSQL";
 SELECT * FROM users_info
-  WHERE ? = ?
+  WHERE $key = ?
 EOSQL
-    my $rs = $self->_select_rows($sql, $key, $value);
+    my $rs = $self->_select_rows($sql, $value);
     return if (@$rs == 0);
 
     my $ret = $rs->[0];
@@ -193,11 +193,8 @@ EOSQL
 
 sub _comments {
     my ($self, $key, $value) = @_;
-    my $sql = <<"EOSQL";
-SELECT * FROM users_comments
-  WHERE ? = ?
-EOSQL
-    my $rs = $self->_select_rows($sql, $key, $value);
+    my $sql = "SELECT * FROM users_comments WHERE $key = ?";
+    my $rs = $self->_select_rows($sql, $value);
     return if (@$rs == 0);
 
     my $ret = $rs->[0];
@@ -208,12 +205,12 @@ sub _param {
     my ($self, $key, $value) = @_;
     my $sql = <<"EOSQL";
 SELECT param_id, name, value FROM users_param
-  WHERE ? = ?
+  WHERE $key = ?
 EOSQL
 
     my $dbh = $self->connect_db;
     my $sth = $dbh->prepare($sql);
-    $sth->execute($key, $value);
+    $sth->execute($value);
     my $rs = $sth->fetchall_hashref('name');
 
     $sth->finish;