如何获取应从此查询传回的数据。这是在我的模型中。我不知道我是否正确行事,因为我还没有收到任何输出。我已经在phpmyadmin中测试了查询,它可以工作。我需要能够成功地将数据从function get_reg2()
传递到我的控制器。
我不知道回报是否正确
return $this->db->query($query, $data);
Joins_model extends CI_Model....
function get_reg2($data){
$query = ('
SELECT DISTINCT
cm_valuacion.mano_obra,
cm_nomina.nomina,
cm_empleado.nombre,
cm_proveedor.nombre,
cm_valuacion.hojalateria,
cm_valuacion.pintura,
cm_valuacion.mecanica,
cm_valuacion.refaccion,
cm_valuacion.tipo,
cm_valuacion.shojalateria,
cm_valuacion.spintura,
cm_valuacion.smecanica,
cm_valuacion.costoHojalateria,
cm_valuacion.costoPintura,
cm_valuacion.costoMecanica,
cm_valuacion.pv_hojalateria,
cm_valuacion.pv_pintura,
cm_valuacion.pv_mecanica,
cm_valuacion.pc_hojalateria,
cm_valuacion.pc_pintura,
cm_valuacion.pc_mecanica,
cm_compras.precio,
cm_compras.status
FROM cm_valuacionr,
cm_nomina
INNER JOIN cm_empleado
ON cm_nomina.id_empleado = cm_empleado.id
INNER JOIN cm_valuacion
ON cm_valuacion.id_siniestro = cm_nomina.id_siniestro
INNER JOIN cm_compras
ON cm_compras.id_siniestro = cm_valuacion.id_siniestro
INNER JOIN cm_proveedor
ON cm_compras.id_proveedor = cm_proveedor.id
WHERE cm_valuacion.id_siniestro = ?
AND cm_valuacion.id_complemento = 0
GROUP BY mano_obra
');
return $this->db->query($query, $data);
}
}
我也不知道我是否在这里正确接收
$registros = $this->joins_model->get_reg2($id);
我在控制器中拥有的是:
$registros = $this->joins_model->get_reg2($id);
$this->load->library('table');
$this->table->set_empty(" ");
$this->table->set_heading(
$this->st_cell('D'),
$this->st_cell('CANT.'),
$this->st_cell('PROVEEDOR'),
$this->st_cell('NOTA'),
$this->st_cell('DESCRIPCION'),
$this->st_cell('COSTO'),
$this->st_cell('VENTA'),
$this->st_cell('EMPLEADO'),
$this->st_cell('NOMINA'),
$this->st_cell('TOTAL')
);
foreach ($registros->result() as $registro){
//this is where I want to be able to specify what parameter I want
//to access from the query that was returned. How do I do this?
//for example theres *nombre* up there and it's there twice. Once
//for *empleado* and the other for *proveedor*
}
并在此处正确使用;
$registros->result() as $registro
答案 0 :(得分:1)
假设
- 在模型
get_reg2($id)
中,我假设数据正在接收。- 您的SQL代码运行正常。
醇>
<强>更改强>
- 模型代码已修改,返回目标数组。
- 控制器功能已更改。
- 表标题已修改。
- 醇>
foreach
循环指向要呈现的数据。
<强>冷藏强>
试试这个
在模型中
function get_reg2($id)
{
$query = ('
SELECT DISTINCT
cm_valuacion.mano_obra,
cm_nomina.nomina,
cm_empleado.nombre,
cm_proveedor.nombre,
cm_valuacion.hojalateria,
cm_valuacion.pintura,
cm_valuacion.mecanica,
cm_valuacion.refaccion,
cm_valuacion.tipo,
cm_valuacion.shojalateria,
cm_valuacion.spintura,
cm_valuacion.smecanica,
cm_valuacion.costoHojalateria,
cm_valuacion.costoPintura,
cm_valuacion.costoMecanica,
cm_valuacion.pv_hojalateria,
cm_valuacion.pv_pintura,
cm_valuacion.pv_mecanica,
cm_valuacion.pc_hojalateria,
cm_valuacion.pc_pintura,
cm_valuacion.pc_mecanica,
cm_compras.precio,
cm_compras.status
FROM cm_valuacionr,
cm_nomina
INNER JOIN cm_empleado
ON cm_nomina.id_empleado = cm_empleado.id
INNER JOIN cm_valuacion
ON cm_valuacion.id_siniestro = cm_nomina.id_siniestro
INNER JOIN cm_compras
ON cm_compras.id_siniestro = cm_valuacion.id_siniestro
INNER JOIN cm_proveedor
ON cm_compras.id_proveedor = cm_proveedor.id
WHERE cm_valuacion.id_siniestro = ?
AND cm_valuacion.id_complemento = 0
GROUP BY mano_obra
');
$query = $this->db->query($query, $id); # Changed
$result = $query->result_array(); # Added
return $result; # Added
}
}
在控制器中
$registros = $this->joins_model->get_reg3($id);
//var_dump($registros);
//print_r($registros);
if (empty($registros))
{
echo "No data recived from Database";
}else{
?>
<table border="2px">
<tr>
<th>D</th>
<th>Cant</th>
</tr>
<?php
foreach ($registros as $registro)
{
?>
<tr>
<td><?php echo $registro['mano_obra'] ?></td>
<td><?php echo $registro['nomina'] ?></td>
</tr>
<?php
}
?>
</table>
<?php
}