For Programmers: Free Programming Magazines  


Home > Archive > PHP Pear > November 2006 > Possible DB_DataObject bug with joins









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Possible DB_DataObject bug with joins
cron@odi.com.br

2006-11-21, 6:59 pm



$usuario = DB_DataObject::factory("usuario");
$regional = DB_DataObject::factory("regional");

$usuario->strnome = "nome33";

$usuario->joinAdd($regional, "INNER", "regional", "idregional");

usuario->selectAs(array('id','strregional'), "regional_%s","regional");

Resulting select

SELECT *, regional.id as regional_id , regional.strregional as
regional_strregional
FROM usuario
INNER JOIN regional ON regional.id=usuario.idregional
WHERE ( strnome ILIKE '%nome33%' )

Note the *, fields. Does not matter if i use selectAs to select only 2 fields,
the * will return all fields from all tables in the join.

Not elegant fix, fit it is a fix:

Replace (line 2563):

return $class;

Width:


$objClass = new $class;
$objClass->_query['data_select'] = $table . ".*";

return $objClass;


Ps: No idea if it has collateral damages.

Cron
Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com