Foros del Web » Programando para Internet » PHP »

error funcion

Estas en el tema de error funcion en el foro de PHP en Foros del Web. ayuda me sale un error cuando quiero haceer una funcion en consulta para mi paginacion en php @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código PHP: Ver original <?php require_once ...
  #1 (permalink)  
Antiguo 05/03/2015, 14:08
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Mensaje error funcion

ayuda me sale un error cuando quiero haceer una funcion en consulta
para mi paginacion en php
Código PHP:
Ver original
  1. <?php
  2. require_once './bd/bd.php';
  3. require_once './librerias/Zebra_Pagination.php';
  4.  
  5. function mostrarAnunciosxDistrito($operacion,$inmueble,$distrito,$posicion,$resultadoxpagina)
  6.     {
  7.        
  8.         $conexion=dbConnect();
  9.         $consulta=$conexion->prepare('SELECT anuncioid, img1, nombre, descripcion, precio, operacion, areaconstruida, areatotal, dormitorios, banoscompletos, anuncios.distritoid from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito LIMIT '.(($paginacion->get_page() - 1) * $registrosxpagina). ',' .$registrosxpagina);
  10.        
  11.         //$consulta=$conexion->prepare("SELECT anuncioid, img1, nombre, descripcion, precio, operacion, areaconstruida, areatotal, dormitorios, banoscompletos, anuncios.distritoid from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito LIMIT $posicion,$resultadoxpagina");
  12.         $consulta->bindParam(':operacion',$operacion);
  13.         $consulta->bindParam(':inmueble',$inmueble);
  14.         $consulta->bindParam(':distrito',$distrito);
  15.         $consulta->execute();
  16.         $conexion=null;                
  17.         while ($rowanuncios=$consulta->fetch(PDO::FETCH_ASSOC)) {
  18.             $anuncios[]=$rowanuncios;
  19.         }
  20.         return $anuncios;
  21.  
  22.     }
  23. ?>
  #2 (permalink)  
Antiguo 05/03/2015, 14:08
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: error funcion

me muestra ese error
Fatal error: Call to a member function get_page() on a non-object in C:\AppServ\www\buscando\model\Anuncios.php on line 53
  #3 (permalink)  
Antiguo 05/03/2015, 14:30
Avatar de MaNuX0218  
Fecha de Ingreso: marzo-2014
Mensajes: 787
Antigüedad: 10 años, 1 mes
Puntos: 67
Respuesta: error funcion

Te lo dice claramente que la funcion get_page() no es un objeto.

Muestranos la funcion para haber que puedes tener mal, en caso de que no la tengas y sea un copy/paste, es necesario tener dicha funcion.

Saludos.
  #4 (permalink)  
Antiguo 05/03/2015, 14:32
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: error funcion

Tienes que pasar paginacion a tu función como parámetro
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #5 (permalink)  
Antiguo 05/03/2015, 14:54
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Mensaje Respuesta: error funcion

PRIMERA CAPA:
<?php
require_once 'controller/mostrarAnunciosxDistritoController.php';
require_once 'librerias/Zebra_Pagination.php';

$anuncios=null;
$pagina=$_REQUEST['pagina'];
$cantidadanuncios=$num_registros[0]['cantidad'];
$enlaces = ceil (($num_registros[0]['cantidad'] / $registrosxpagina));


//Registros por pagina:
$registrosxpagina = 18;

//Paginar:
$paginacion = new Zebra_Pagination();
$paginacion->records($cantidadanuncios);
$paginacion->records_per_page($registrosxpagina);
//$paginacion->padding(false);
$paginacion=$enlaces;

/* $maximo="8";
$next="4";
if ($pagina == 0)
{
$v1=($pagina + $maximo );
}
else {
$v1=($pagina + $next );
} */
?>
SEGUNDA CAPA
<?php
require_once './model/Anuncios.php';
$distrito=$_REQUEST['distrito'];
$operacion=$_REQUEST['site'];
$inmueble=$_REQUEST['inmueble'];

if (isset($_REQUEST['pos']))
{
$posicion=$_REQUEST['pos'];
}else{
$posicion=0;
}


//CONTAR CUANTOS REGISTROS DEVUELVE LA CONSULTA
$anunciosxdistrito=new Anuncios;
$num_registros=$anunciosxdistrito->mostrarCantidadAnunciosxDistrito($operacion,$inmu eble,$distrito);
//REGISTROS POR PAGINA
$registrosxpagina=18;
//$registrosxpagina=18;
//
//MOSTRAR REGISTROS PAGINADOS
$resultadoanuncios=$anunciosxdistrito->mostrarAnunciosxDistrito($operacion,$inmueble,$di strito,$posicion,$registrosxpagina);
return $resultadoanuncios;
?>
3RA CAPA:
MIS FUNCIONES
<?php
function mostrarCantidadAnunciosxDistrito($operacion,$inmue ble,$distrito)
{

$conexion=dbConnect();
$consulta=$conexion->prepare('SELECT COUNT(anuncioid) as cantidad from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito');
$consulta->bindParam(':operacion',$operacion);
$consulta->bindParam(':inmueble',$inmueble);
$consulta->bindParam(':distrito',$distrito);
$consulta->execute();
$conexion=null;
while ($rowcantidad=$consulta->fetch(PDO::FETCH_ASSOC)) {
$cantidad[]=$rowcantidad;
}
return $cantidad;

}

function mostrarAnunciosxDistrito($operacion,$inmueble,$dis trito,$posicion,$resultadoxpagina)
{

$conexion=dbConnect();
$consulta=$conexion->prepare('SELECT anuncioid, img1, nombre, descripcion, precio, operacion, areaconstruida, areatotal, dormitorios, banoscompletos, anuncios.distritoid from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito LIMIT '.(($paginacion->get_page() - 1) * $registrosxpagina). ',' .$registrosxpagina);

$consulta->bindParam(':operacion',$operacion);
$consulta->bindParam(':inmueble',$inmueble);
$consulta->bindParam(':distrito',$distrito);
$consulta->execute();
$conexion=null;
while ($rowanuncios=$consulta->fetch(PDO::FETCH_ASSOC)) {
$anuncios[]=$rowanuncios;
}
return $anuncios;

}
?>

CON ESTO VEO MI BARRA DE PAGININACION
Código PHP:
Ver original
  1. <?php
  2.             $paginacion->render();
  3.             ?>
  #6 (permalink)  
Antiguo 05/03/2015, 15:43
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Respuesta: error funcion

Código PHP:
Ver original
  1. PRIMERA CAPA:
  2. <?php
  3. require_once 'controller/mostrarAnunciosxDistritoController.php';
  4. require_once 'librerias/Zebra_Pagination.php';
  5.  
  6. $anuncios=null;
  7. $pagina=$_REQUEST['pagina'];
  8. $cantidadanuncios=$num_registros[0]['cantidad'];
  9. $enlaces = ceil (($num_registros[0]['cantidad'] / $registrosxpagina));
  10.  
  11.  
  12. //Registros por pagina:
  13. $registrosxpagina = 18;
  14.  
  15. //Paginar:
  16. $paginacion = new Zebra_Pagination();
  17. $paginacion->records($cantidadanuncios);
  18. $paginacion->records_per_page($registrosxpagina);
  19. //$paginacion->padding(false);
  20. $paginacion=$enlaces;
  21.  
  22. /* $maximo="8";
  23. $next="4";
  24. if ($pagina == 0)
  25. {
  26. $v1=($pagina + $maximo );
  27. }
  28. else {
  29. $v1=($pagina + $next );
  30. } */
  31. ?>
  32. SEGUNDA CAPA
  33. <?php
  34. require_once './model/Anuncios.php';
  35. $distrito=$_REQUEST['distrito'];
  36. $operacion=$_REQUEST['site'];
  37. $inmueble=$_REQUEST['inmueble'];
  38.  
  39. if (isset($_REQUEST['pos']))
  40. {
  41. $posicion=$_REQUEST['pos'];
  42. }else{
  43. $posicion=0;
  44. }
  45.  
  46.  
  47. //CONTAR CUANTOS REGISTROS DEVUELVE LA CONSULTA
  48. $anunciosxdistrito=new Anuncios;
  49. $num_registros=$anunciosxdistrito->mostrarCantidadAnunciosxDistrito($operacion,$inmu eble,$distrito);
  50. //REGISTROS POR PAGINA
  51. $registrosxpagina=18;
  52. //$registrosxpagina=18;
  53. //
  54. //MOSTRAR REGISTROS PAGINADOS
  55. $resultadoanuncios=$anunciosxdistrito->mostrarAnunciosxDistrito($operacion,$inmueble,$di strito,$posicion,$registrosxpagina);
  56. return $resultadoanuncios;
  57. ?>
  58. 3RA CAPA:
  59. MIS FUNCIONES
  60. <?php
  61. function mostrarCantidadAnunciosxDistrito($operacion,$inmue ble,$distrito)
  62. {
  63.  
  64. $conexion=dbConnect();
  65. $consulta=$conexion->prepare('SELECT COUNT(anuncioid) as cantidad from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito');
  66. $consulta->bindParam(':operacion',$operacion);
  67. $consulta->bindParam(':inmueble',$inmueble);
  68. $consulta->bindParam(':distrito',$distrito);
  69. $consulta->execute();
  70. $conexion=null;
  71. while ($rowcantidad=$consulta->fetch(PDO::FETCH_ASSOC)) {
  72. $cantidad[]=$rowcantidad;
  73. }
  74. return $cantidad;
  75.  
  76. }
  77.  
  78. function mostrarAnunciosxDistrito($operacion,$inmueble,$dis trito,$posicion,$resultadoxpagina)
  79. {
  80.  
  81. $conexion=dbConnect();
  82. $consulta=$conexion->prepare('SELECT anuncioid, img1, nombre, descripcion, precio, operacion, areaconstruida, areatotal, dormitorios, banoscompletos, anuncios.distritoid from anuncios INNER JOIN distritos ON anuncios.distritoid=distritos.distritoid WHERE operacion=:operacion AND tipo_inmueble=:inmueble AND distritos.distrito=:distrito LIMIT '.(($paginacion->get_page() - 1) * $registrosxpagina). ',' .$registrosxpagina);
  83.  
  84. $consulta->bindParam(':operacion',$operacion);
  85. $consulta->bindParam(':inmueble',$inmueble);
  86. $consulta->bindParam(':distrito',$distrito);
  87. $consulta->execute();
  88. $conexion=null;
  89. while ($rowanuncios=$consulta->fetch(PDO::FETCH_ASSOC)) {
  90. $anuncios[]=$rowanuncios;
  91. }
  92. return $anuncios;
  93.  
  94. }
  95. ?>
  #7 (permalink)  
Antiguo 05/03/2015, 16:42
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 9 meses
Puntos: 379
Respuesta: error funcion

Va de nuevo por que al parecer no estas leyendo lo que te publican.
Esta variable $paginacion la tienes que pasar como parámetro a la función mostrarAnunciosxDistrito.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #8 (permalink)  
Antiguo 05/03/2015, 16:59
 
Fecha de Ingreso: enero-2012
Mensajes: 158
Antigüedad: 12 años, 2 meses
Puntos: 1
Pregunta Respuesta: error funcion

lo pase ASI pero no me busca no sale nada
Código PHP:
Ver original
  1. <?php foreach ($paginacion as $anuncios){?>
  2.                     <div class="span4 box-container one-edge-shadow">
  3.                         <div id="hvr" class="holder">
  4.                             <a class="overlay" href="anuncio.php?anuncioid=<?php echo $anuncios['anuncioid']; ?>&distritoid=<?php echo $anuncios['distritoid']; ?>" title="nombre de la propiedad">
  5.                                 <span class="more"></span>
  6.                                 <img alt="image" class="media-object" src=<?php echo $anuncios['img1']; ?>>
  7.                             </a>
  8.                             <span class="prop-tag">En <?php echo $anuncios['operacion']; ?></span>
  9.                             <div class="prop-info">
  10.                                 <h3 class="prop-title"><?php echo utf8_encode($anuncios['nombre']); ?></h3>
  11.                                 <ul class="more-info clearfix">
  12.                                     <li class="info-label clearfix"><span class="pull-left">Precio:</span>
  13.                                     <span class="qty pull-right"><?php echo $anuncios['precio']; ?></span></li>
  14.                                     <li class="info-label clearfix">
  15.                                         <span class="pull-left">
  16.                                         <?php echo $anuncios['dormitorios']." "; ?><img src="images/dormitorio.png" width="25" height="25" alt="Dormitorios" class="img-responsive">
  17.                                         <?php echo $anuncios['banoscompletos']." "; ?><img src="images/bano.png" width="25" height="25" alt="Baños" class="img-responsive">
  18.                                         </span>
  19.                                     <span class="qty pull-right"><?php echo $anuncios['areatotal']; ?></span></li>
  20.                                 </ul>
  21.                             </div>
  22.                         </div>
  23.                        
  24.                     </div>
  25.                 <?php } ?>

Etiquetas: funcion, registro, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:10.