Esto es lo que estoy haciendo, ya hice un free_result con el objeto que me da mybb, en la consulta anterior
Código PHP:
Ver original<?php
//$templatelist="TD_Clasif,TD_clasif_colapsa,TD_clasif_sinjs";
require_once '../FORO/global.php';
class capajax{
function numfilas($datos){
global $db;
//$sinlimit=$this->quitarlimit($datos);
$resultado=$db->query($datos);
$numerofilas = $db->num_rows($resultado);
$db->free_result($resultado);
return $numerofilas;
}
function numpaginas($datos){
$resultadoporpag="10";
// $numerofilas=$this->numfilas($datos);
$totalpaginas=$datos/$resultadoporpag;
$numeropaginas=ceil ($totalpaginas); return $numeropaginas;
}
function crearpaginacion($numpaginas){
global $templates;
$a=1;
for($i=1;$i<=$numpaginas;$i++){
eval('$paginacion_c.= "'.$templates->get('TD_ajax_pagina_ciclo').'";'); $a++;
if($a>2){$a=1;}
}
eval('$paginacion= "'.$templates->get('TD_ajax_pagina').'";'); return $paginacion;
}
function listaproductos($datos){
global $db,$templates,$mybb;
$classfila[0]="filauno";
$classfila[1]="filados";
$i=0;
$listprods_c="";
$sql=$this->construirsql($datos,10);
$resultado = $db->query($sql);
while ($filas = $db->fetch_array($resultado)) {
$_SESSION['PRODS'][$filas['ID']]['PRODUCTO']=$filas['PRODUCTO'];
$precioclient=round($filas['PRECIOCLIENT'],2); eval('$listprods_c.= "'.$templates->get('TD_ajax_listprods_ciclo').'";'); $i++;
if($i>1){$i=0;}
}
eval('$listprods= "'.$templates->get('TD_ajax_listprods').'";'); return $listprods;
}
function construirsql($datos,$numfilas){
global $mybb;
$uid=$mybb->user['uid'];
$ip="0";
$sql="CALL BUSCAR('%".$infototal[0]."%',".$infototal[1].",";
$sql.=$infototal[2].",'".$infototal[3]."','".$infototal[4]."',";
$sql.=$infototal[5].",".$numfilas.",".$uid.",'".$ip."')";
return $sql;
}
function decidircontenidolistado($datos){
global $templates, $db;
$nohayresultados="No hay resultados";
$sql=$this->construirsql($datos,0);
$numerofilas=$this->numfilas($sql);
$numeropaginas=$this->numpaginas($numerofilas);
if($numerofilas==1){$resultados=" resultado";}else{$resultados=" resultados";}
if($numeropaginas==1){$paginas=" pagina";}else{$paginas=" paginas";}
eval('$ajaxcapauno= "'.$templates->get('TD_ajax_cuanti').'";');
$ajaxcapados=$this->crearpaginacion($numeropaginas);
$ajaxcapatres=$this->listaproductos($sql);
if($numeropaginas==0){$html=$nohayresultados;}
if($numeropaginas==1){$html=$ajaxcapauno.$ajaxcapatres;}
if($numeropaginas>1){$html=$ajaxcapauno.$ajaxcapados.$ajaxcapatres;}
return $html;
}
function derivacionaccion($datos){
$html="";
$info=$derivacion[0];
$seccion=$derivacion[1];
if($seccion==0){
$html.=$this->decidircontenidolistado($info);
}
if($seccion==1){
$html.=$this->detalladototal($info);
}
if($seccion==2){
$html.=$this->seleccionarpagina($info);
}
if($seccion==3){
$html.=$this->autocompletador($info);
// $html.=$datos;
}
if($seccion==4){
$html.=$this->decidircontenidolistado($info,'1','1');
// $html.=$datos;
}
if($seccion==5){
$html=$this->comprar($dat[0],$dat[1],$dat[2]);
//$html.=$info;
//$html="LO HAS COMPRADO";
}
}
}
$capajax=new capajax;
$html=$capajax->derivacionaccion('memo|0|99999|1,1-1,1-1-1,1-1-2,1-1-3,1-2,1-2-1,1-2-2,1-2-3,1-3,1-3-1,1-3-2,1-3-3|DESC|0|0¡0');
eval("\$page = \"".$templates->get("TD_AJAX")."\";"); output_page($page);
?>