Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/05/2010, 07:26
chelitovc
 
Fecha de Ingreso: mayo-2010
Mensajes: 6
Antigüedad: 14 años
Puntos: 0
Pregunta no puedo mostrar consultas complejas con xajax

hola..... por favor ayudenme con este problema...
estoy trabajando en php con xajax,postgre..

actualmente muestro la consulta hecha de una sola tabla asi:
//funcion
function mostrar(){

$cad = <<<coo

<table border="1" id="ordenado">

coo;
$q = new DB_Sql();

$q->Host = 'xxx';

$q->Database = 'xxx';

$q->Port ='xxx';

$q->User = 'xxx';

$q->Password = 'xxx';



$q->query("select * from calidad.cqmsnfinal where snfin_fechanalisis=current_date order by snfin_num;");

while ($q->next_record()) {

$cad .= "<tr >";

$cad .= '<td align="center">'.$q->f('snfin_num').'</td>';
$cad .= '<td align="center">'.$q->f('snfin_fechanalisis').'</td>';
$cad .= '<td align="center">'.$q->f('snfin_lote').'/'.$q->f('snfin_numlote').'</td>';

$cad .= '<td align="center">'.$q->f('snfin_peso').'</td>';

$cad .= '<td align="center">'.$q->f('snfin_yodo').'</td>';
$cad .= '<td align="center">'.$q->f('snfin_ley').'</td></tr>';

}
$cad .= '</table>';

$resp = new xajaxResponse();

$resp->assign('orden','innerHTML',$cad);

return $resp;

}

ESTE CODIGO ME FUNCIONA NORMAL.....
PERO SI AHORA YO DESEO MOSTRAR UNA CONSULTA DONDE INTERVIENEN VARIAS TABLAS ...SERIA COLOCAR EN LA FUNCION ASI (SUIGUIENDO LA MISMA LOGICA NO?)...

$q->query("
SELECT a.acal_numuestra , x.conc_extra , f.snfin_ley, x.snex_ley,ROUND(((f.snfin_ley + x.snex_ley) /2),2)
FROM calidad.cqmsnfinal f,calidad.cqmsnextra x,calidad.cqtalscalidad a,calidad.cqtmuestra m,calidad.crmconcentrado c, calidad.cqmprocedencia p
WHERE f.snfin_num=a.acal_numuestra AND x.conc_extra=c.conc_extra AND a.mtr_id=m.mtr_id AND m.pro_sigla=p.pro_sigla AND m.mtr_numlote=c.conc_numlote AND m.pro_sigla=c.conc_lote;");
while ($q->next_record()) {
$cad .= "<tr >";
//LINEAS QUE MUESTRAN EL ERROR
30 $cad .= '<td>'.$q->f('a.acal_numuestra').'</td>';
31 $cad .= '<td>'.$q->f('x.conc_extra').'</td>';
32 $cad .= '<td>'.$q->f('f.snfin_ley').'</td>';
33 $cad .= '<td>'.$q->f('x.snex_ley').'</td>';
34 $cad .= '<td>'.$q->f('round(((f.snfin_ley + x.snex_ley) /2),2)').'</td></tr>';
35 }
PERO EN ESTE CASO NO ME FUNCIONA NADA (MANDA UN ERROR DE "INDEX INDEFINIDO EN LA LINE 30" Y ASI SUCESIVAMENTE PARA LA 31,32,33,34)(CABE DECIR QUE MIS TABLAS ESTAN INMERSAS EN UN ESQUEMA "calidad")
POR FAVOR LES RUEGO QUE ME SAQUEN DE ESTA DUDA ...