Lo siguiente también está bien:
if($query1->num_rows() > 0){
$row = $query1->row();
}
return $row->dPassword;
Luego, si su consulta fuera a devolver más de una sola fila, podría operar en los resultados de la siguiente manera:
foreach($query1->result() as $row){
echo $row->field1;
echo $row->field2;
echo $row->etcetera;
}
Para resultados de una sola fila, generalmente devuelvo la fila directamente desde el modelo así:
return $query1->row();
Aquí hay un ejemplo de esto:
function select_provider_details($provider_id)
{
$this->db->select('*');
$this->db->from('providers');
$this->db->where('provider_id', $provider_id);
$query = $this->db->get();
if($query->num_rows() > 0)
{
$result['success'] = TRUE;
$result['query'] = $query->row();
}
else
{
$result['success'] = FALSE;
$result['error'] = "Provider not found in database";
$result['errorcode'] = "E003";
$result['query'] = $query->row();
}
return $result;
}
O para una consulta que se espera que devuelva varios resultados, devuelvo el objeto de resultados completo:
return $query1;