PEAR is archived and read-only

This mirror preserves historical PEAR package releases and metadata so existing references remain available.

Home » Authentication » Auth » Bug #7089

Add a WHERE clause in Auth request with DB container

Details

Request #7089Add a WHERE clause in Auth request with DB container
Submitted2006-03-10 14:46 UTC
Fromjlb at freelug dot org
Assignedaashley
StatusClosed
PackageAuth
PHP Version4.3.10
OSn/a
Roadmaps(Not assigned)

Comments

[2006-03-10 14:46 UTC] jlb at freelug dot org

Description:
------------
I had a need to do a more complicated query to authenticate user from an existant database. So i had a new option to DB Container : db_where_options

This options is some WHERE condition, like "status=1" that will be added to the end of select query to authenticate user.

this is the little patch against Auth/Container/DB.php, use like you want (i hope it will be included in the next release :-) )

--- DB.php.orig 2006-03-10 15:19:36.000000000 +0100
+++ DB.php 2006-03-10 15:21:37.000000000 +0100
@@ -193,6 +193,7 @@
$this->options['db_fields'] = '';
$this->options['cryptType'] = 'md5';
$this->options['db_options'] = array();
+ $this->options['db_where_options'] = '';
}

// }}}
@@ -272,6 +273,12 @@
$query = "SELECT ".$sql_from.
" FROM ".$this->options['table'].
" WHERE ".$this->options['usernamecol']." = ".$this->db->quoteSmart($username);
+
+ // check if there is an optional parameter db_where_options
+ if ( $this->options['db_where_options'] != '' ){
+ // there is one, so add it to the query
+ $query .= " AND ".$this->options['db_where_options'];
+ }

$res = $this->db->getRow($query, null, DB_FETCHMODE_ASSOC);

[2006-12-21 04:53 UTC] aashley at php dot net

This bug has been fixed in CVS.

If this was a documentation problem, the fix will appear on pear.php.net by the end of next Sunday (CET).

If this was a problem with the pear.php.net website, the change should be live shortly.

Otherwise, the fix will appear in the package's next release.

Thank you for the report and for helping us make PEAR better.