Foros del Web » Programando para Internet » PHP »

Paginacion de Resultados

Estas en el tema de Paginacion de Resultados en el foro de PHP en Foros del Web. Hola a todos, estoy utilizando campos select para filtrar la busqueda de mi base de datos, el problema es que me aparecen muchisimos resultados. Intente ...

  #1 (permalink)  
Antiguo 23/11/2011, 13:06
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Paginacion de Resultados

Hola a todos, estoy utilizando campos select para filtrar la busqueda de mi base de datos, el problema es que me aparecen muchisimos resultados. Intente paginarlo leyendo cosas del foro pero no lo logre, intente hacerlo con kpaginate seguramente estoy insertando mal los codigos. Les dejo mi codigo haber si alguno me puede ayudar, Muchisimas gracias !

Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('catalogo');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
$sql 
"SELECT * FROM producto p ";
$sql .= "LEFT JOIN linea l ON l.id = p.idlinea ";
$sql .= "LEFT JOIN rubro r ON r.id = p.idrubro ";
$sql .= "LEFT JOIN marca m ON m.id = p.idmarca ";
$sql .= "LEFT JOIN marca a ON a.id = p.idmodelo ";
$sql .= "WHERE 1";
if (isset(
$_POST['selLinea']) && $_POST['selLinea'] != -1) {
    
$sql .= " AND l.id = " $_POST['selLinea'];
}
if (isset(
$_POST['selRubro']) && $_POST['selRubro'] != -1) {
    
$sql .= " AND r.id = " $_POST['selRubro'];
}
if (isset(
$_POST['selMarca']) && $_POST['selMarca'] != -1) {
    
$sql .= " AND m.id = " $_POST['selMarca'];
}
if (isset(
$_POST['selModelo']) && $_POST['selModelo'] != -1) {
    
$sql .= " AND a.id = " $_POST['selModelo'];
}
if (isset(
$_POST['txtBusqueda'])) {
    
$sql .= " AND p.titulo LIKE '%" $_POST['txtBusqueda'] . "%'";
}

$sql .= " ORDER BY p.id DESC";
$tabla mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
      
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

  </table></td>
    </tr>
  </table>
</div>
</tr>
</body>
</html>
  #2 (permalink)  
Antiguo 23/11/2011, 13:49
Avatar de tomark4  
Fecha de Ingreso: septiembre-2007
Mensajes: 154
Antigüedad: 16 años, 7 meses
Puntos: 29
Respuesta: Paginacion de Resultados

aqui tiene dos ejemplos:

http://www.desarrolloweb.com/articulos/1035.php

http://www.webexperto.com/articulos/...tados-con-php/

en google aparecen muchos mas incluso con ajax
__________________
"Todos somos ignorantes, pero no todos ignoramos las mismas cosas"

http://www.pctec21.blogspot.com
http://www.pctec21.com
  #3 (permalink)  
Antiguo 23/11/2011, 14:28
 
Fecha de Ingreso: diciembre-2005
Mensajes: 87
Antigüedad: 18 años, 4 meses
Puntos: 3
Respuesta: Paginacion de Resultados

Mira acabo de solucionar mi problema (el mismo que el tuyo) gracias a la gente tan maja que anda por el foro:

http://www.forosdelweb.com/f18/pagin...ltados-959502/

Ahora pondre el codigo entero de como ha quedado...
  #4 (permalink)  
Antiguo 23/11/2011, 17:57
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Gracias por contestar!!
Nomakon lo hice como vos me pasaste pero no me funciona que estoy poniendo mal?

Código PHP:
<?php
$registros 
1
if (!
$pagina) { 
$inicio 0
$pagina 1

else { 
$inicio = ($pagina 1) * $registros

$id_producto $_GET[id_producto];

$conexion mysql_connect('localhost''root''');
mysql_select_db('catalogo');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
$sql 
"SELECT * FROM producto p ";
$sql .= "LEFT JOIN linea l ON l.id = p.idlinea ";
$sql .= "LEFT JOIN rubro r ON r.id = p.idrubro ";
$sql .= "LEFT JOIN marca m ON m.id = p.idmarca ";
$sql .= "LEFT JOIN marca a ON a.id = p.idmodelo ";
$sql .= "WHERE 1";
if (isset(
$_POST['selLinea']) && $_POST['selLinea'] != -1) {
    
$sql .= " AND l.id = " $_POST['selLinea'];
}
if (isset(
$_POST['selRubro']) && $_POST['selRubro'] != -1) {
    
$sql .= " AND r.id = " $_POST['selRubro'];
}
if (isset(
$_POST['selMarca']) && $_POST['selMarca'] != -1) {
    
$sql .= " AND m.id = " $_POST['selMarca'];
}
if (isset(
$_POST['selModelo']) && $_POST['selModelo'] != -1) {
    
$sql .= " AND a.id = " $_POST['selModelo'];
}
if (isset(
$_POST['txtBusqueda'])) {
    
$sql .= " AND p.titulo LIKE '%" $_POST['txtBusqueda'] . "%'";
}

$sql .= " ORDER BY p.id DESC";
$tabla mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
     <!-- PAGES --> 
 <div class="blogpages"> 
               <ul> 
                <li><?php  
                
if(empty($id_producto)) 
                    { 
                    
$enlace=''
                    } 
                    else 
                    { 
                    
$enlace="&id_producto=$_GET[id_producto]"
                    } 
                if((
$pagina 1) > 0) { 
echo 
"<a class='rounded' href='busquedapropiedades.php?pagina=".($pagina-1)."'$enlace''>ANTERIOR</a>"

else { 
echo 
"&nbsp;"

?></li> 
<li> 
<?php  
// Se saca el listado de pginas mediante un bucle 
$pgIntervalo 3// Pginas que aparecen antes y despus de la actual 
$pgMaximo = ($pgIntervalo*2)+1// Mximo de pginas en el listado 
$pg=$pagina-$pgIntervalo;$i=0
while (
$i<$pgMaximo) { 
if (
$pg==$pagina) {$class='selected rounded';} else {$class=('rounded');} 
if (
$pg>and $pg<=$total_paginas) { 
echo 
'<a class="'.$class.'" href="noticias.php?pagina='.$pg.''.$enlace.'">' .$pg'</a>'
$i++; 

if (
$pg>$total_paginas) {$i=$pgMaximo;} // Si la pgina que se va a mostrar se pasa de la cantidad de pginas definidas en $total_paginas se para la generacin de elementos de lista 
$pg++; 

?> 
</li> 
<li> 
<?php if(($pagina 1)<=$total_paginas) { 

echo 
" <a class='rounded' href='noticias.php?pagina=".($pagina+1)."$enlace'>SIGUIENTE</a>"
}  
else { 
echo 
"&nbsp;"

?></li> 
</ul> 
</div> 
<br style="clear: left" /> 
<br style="clear: left" /> 
<!-- PAGES END -->  
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

  </table></td>
    </tr>
  </table>
</div>
</tr>
</body>
</html>
  #5 (permalink)  
Antiguo 24/11/2011, 10:05
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Ya intente con Jpinedo, easypagination y no lo puedo hacer !!!
Alguna sugerencia ?
  #6 (permalink)  
Antiguo 24/11/2011, 10:10
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

podrías poner la estructura de las tablas?
__________________
la la la
  #7 (permalink)  
Antiguo 24/11/2011, 10:18
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

-- Estructura de tabla para la tabla `linea`
--

CREATE TABLE IF NOT EXISTS `linea` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `marca`
--

CREATE TABLE IF NOT EXISTS `marca` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `modelo`
--

CREATE TABLE IF NOT EXISTS `modelo` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `producto`
--

CREATE TABLE IF NOT EXISTS `producto` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`titulo` varchar(255) NOT NULL,
`idlinea` int(11) NOT NULL,
`idrubro` int(11) NOT NULL,
`idmarca` int(11) NOT NULL,
`idmodelo` int(11) NOT NULL,
`precio` double NOT NULL,
`descripcion` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=15 ;

-- --------------------------------------------------------

--
-- Estructura de tabla para la tabla `rubro`
--

CREATE TABLE IF NOT EXISTS `rubro` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=4 ;


ASI TE SIRVE? GRACIAS
  #8 (permalink)  
Antiguo 24/11/2011, 10:48
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

Bueno me tomé el trabajo de hacertelo jeje
no lo probé, espero que funcione, pero lo más importante el que lo analices y
lo entiendas

Código PHP:
//inicializamos $WHERE
$WHERE =  ' WHERE ';
//REsuoeramos los valores por POST
$idlinea     $_POST['selLinea'];
$idrubro     $_POST['selRubro'];
$idmarca     $_POST['selMarca'];
$idmodelo    $_POST['selModelo'];


//creamos al array con los nombres de los campos de la tabla 
//producto y le asignamos a cada uno el valor por POST
$valores = array(
    
'idlinea'=>$idlinea,
    
'idrubro'=>$idrubro,
    
'idmarca'=>$idmarca,
    
'idmodelo'=>$idmodelo
);
//recorremos el array, concatenando AND luego de cada igualdad
//$id es el indice del array, y a su vez es el nombre campo
//$valor es valor por POST
//luego viene el AND
foreach($valores as $id => $valor)
{
    if(
$valor != "")//si el POST es "algo"
    
{
        
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no
    
}
}

//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios
//entonces $WHERE es nada
if(trim($WHERE) == 'WHERE')
{
    
$WHERE '';
}

 

$consulta=mysql_query("SELECT * FROM producto $WHERE; "); 

Saludos


.
__________________
la la la
  #9 (permalink)  
Antiguo 24/11/2011, 11:19
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

muchas gracias por tu ayuda, pero no entiendo en que parte integro eso...
Lo coloque arriba de : $sql = "SELECT * FROM producto p ";
pero me da error

En este momento mi codigo esta asi:


Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('suspensionnorte');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
$sql 
"SELECT * FROM producto p ";
$sql .= "LEFT JOIN linea l ON l.id = p.idlinea ";
$sql .= "LEFT JOIN rubro r ON r.id = p.idrubro ";
$sql .= "LEFT JOIN marca m ON m.id = p.idmarca ";
$sql .= "LEFT JOIN marca a ON a.id = p.idmodelo ";
$sql .= "WHERE 1";
if (isset(
$_POST['selLinea']) && $_POST['selLinea'] != -1) {
    
$sql .= " AND l.id = " $_POST['selLinea'];
}
if (isset(
$_POST['selRubro']) && $_POST['selRubro'] != -1) {
    
$sql .= " AND r.id = " $_POST['selRubro'];
}
if (isset(
$_POST['selMarca']) && $_POST['selMarca'] != -1) {
    
$sql .= " AND m.id = " $_POST['selMarca'];
}
if (isset(
$_POST['selModelo']) && $_POST['selModelo'] != -1) {
    
$sql .= " AND a.id = " $_POST['selModelo'];
}
if (isset(
$_POST['txtBusqueda'])) {
    
$sql .= " AND p.titulo LIKE '%" $_POST['txtBusqueda'] . "%'";
}

$sql .= " ORDER BY p.id DESC";
$tabla mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
      
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>
  #10 (permalink)  
Antiguo 24/11/2011, 11:31
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

cipiá y pega talcual a ver que pasa



.
Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('suspensionnorte');



    

    
//inicializamos $WHERE
    
$WHERE =  ' WHERE ';
    
//REsuoeramos los valores por POST
    
$idlinea     $_POST['selLinea'];
    
$idrubro     $_POST['selRubro'];
    
$idmarca     $_POST['selMarca'];
    
$idmodelo    $_POST['selModelo'];
    
    
    
//creamos al array con los nombres de los campos de la tabla 
    //producto y le asignamos a cada uno el valor por POST
    
$valores = array(
        
'idlinea'=>$idlinea,
        
'idrubro'=>$idrubro,
        
'idmarca'=>$idmarca,
        
'idmodelo'=>$idmodelo
    
);
    
//recorremos el array, concatenando AND luego de cada igualdad
    //$id es el indice del array, y a su vez es el nombre campo
    //$valor es valor por POST
    //luego viene el AND
    
foreach($valores as $id => $valor)
    {
        if(
$valor != "")//si el POST es "algo"
        
{
            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no
        
}
    }
    
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios
    //entonces $WHERE es nada
    
if(trim($WHERE) == 'WHERE')
    {
        
$WHERE '';
    }



    
    
$sql "SELECT * FROM producto $WHERE; ";
    
    
    
    
    
  










?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
$tabla 
mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
      
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>
__________________
la la la
  #11 (permalink)  
Antiguo 24/11/2011, 11:37
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Lo copié y pegué, me tiro los siguientes errores:


( ! ) Notice: Undefined index: selLinea in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 12

( ! ) Notice: Undefined index: selRubro in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 13

( ! ) Notice: Undefined index: selMarca in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 14

( ! ) Notice: Undefined index: selModelo in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 15

No entiendo nada...
  #12 (permalink)  
Antiguo 24/11/2011, 11:42
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

copiar y pegar nuevamente

Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('suspensionnorte');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
      
 
if(isset($_POST['cmdBuscar'])){   

    
//inicializamos $WHERE
    
$WHERE =  ' WHERE ';
    
//REsuoeramos los valores por POST
    
$idlinea     $_POST['selLinea'];
    
$idrubro     $_POST['selRubro'];
    
$idmarca     $_POST['selMarca'];
    
$idmodelo    $_POST['selModelo'];
    
    
    
//creamos al array con los nombres de los campos de la tabla 
    //producto y le asignamos a cada uno el valor por POST
    
$valores = array(
        
'idlinea'=>$idlinea,
        
'idrubro'=>$idrubro,
        
'idmarca'=>$idmarca,
        
'idmodelo'=>$idmodelo
    
);
    
//recorremos el array, concatenando AND luego de cada igualdad
    //$id es el indice del array, y a su vez es el nombre campo
    //$valor es valor por POST
    //luego viene el AND
    
foreach($valores as $id => $valor)
    {
        if(
$valor != "")//si el POST es "algo"
        
{
            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no
        
}
    }
    
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios
    //entonces $WHERE es nada
    
if(trim($WHERE) == 'WHERE')
    {
        
$WHERE '';
    }




      
      
      
      
      
      
      
      
      
    
$tabla mysql_query($sql) or die(mysql_error());
    if (
mysql_num_rows($tabla) > 0) {
        while (
$registro mysql_fetch_array($tabla)) {
    
?>
          <tr>
            <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
        <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
          <?php echo $registro['titulo']; ?><br>
        </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
        <br>
        </p>      </td>
        <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
          Precio: $ <?php echo $registro['precio']; ?></span></td>
        </tr>
          
    <?php
        
}
    } else {
        echo 
"No se encontraron resultados";
    }

 }
mysql_free_result($tabla);
mysql_close($conexion);
?>
__________________
la la la
  #13 (permalink)  
Antiguo 24/11/2011, 11:45
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Pero che que es complicado esto... Es un dolor de cabeza
Me saltaron otros 2 errores ahora:
( ! ) Notice: Undefined variable: tabla in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 182
( ! ) Warning: mysql_free_result() expects parameter 1 to be resource, null given in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 182


La linea 182 es esta:
mysql_free_result($tabla);
  #14 (permalink)  
Antiguo 24/11/2011, 11:47
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

que pasa cuando presionas el botón buscar?
__________________
la la la
  #15 (permalink)  
Antiguo 24/11/2011, 11:48
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

copiar y pegar nuevamente 3

Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('suspensionnorte');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
      
 
if(isset($_POST['cmdBuscar'])){   

    
//inicializamos $WHERE
    
$WHERE =  ' WHERE ';
    
//REsuoeramos los valores por POST
    
$idlinea     $_POST['selLinea'];
    
$idrubro     $_POST['selRubro'];
    
$idmarca     $_POST['selMarca'];
    
$idmodelo    $_POST['selModelo'];
    
    
    
//creamos al array con los nombres de los campos de la tabla 
    //producto y le asignamos a cada uno el valor por POST
    
$valores = array(
        
'idlinea'=>$idlinea,
        
'idrubro'=>$idrubro,
        
'idmarca'=>$idmarca,
        
'idmodelo'=>$idmodelo
    
);
    
//recorremos el array, concatenando AND luego de cada igualdad
    //$id es el indice del array, y a su vez es el nombre campo
    //$valor es valor por POST
    //luego viene el AND
    
foreach($valores as $id => $valor)
    {
        if(
$valor != "")//si el POST es "algo"
        
{
            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no
        
}
    }
    
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios
    //entonces $WHERE es nada
    
if(trim($WHERE) == 'WHERE')
    {
        
$WHERE '';
    }




      
      
      
      
      
      
      
      
      
    
$tabla mysql_query($sql) or die(mysql_error());
    if (
mysql_num_rows($tabla) > 0) {
        while (
$registro mysql_fetch_array($tabla)) {
    
?>
          <tr>
            <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
        <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
          <?php echo $registro['titulo']; ?><br>
        </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
        <br>
        </p>      </td>
        <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
          Precio: $ <?php echo $registro['precio']; ?></span></td>
        </tr>
          
    <?php
        
}
    } else {
        echo 
"No se encontraron resultados";
    }
mysql_free_result($tabla);
 }

mysql_close($conexion);
?>
__________________
la la la
  #16 (permalink)  
Antiguo 24/11/2011, 11:48
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Cuando busco salta este error:

( ! ) Notice: Undefined variable: sql in C:\wamp\www\INMOBILIARIA\busquedapropiedades.php on line 160

Linea 160:

$tabla = mysql_query($sql) or die(mysql_error());
  #17 (permalink)  
Antiguo 24/11/2011, 11:50
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Con el copiar y pegar 3 no marca ningun error pero no aparecen los resultados y cuando busco tira el error 160 que te pase recien :s
  #18 (permalink)  
Antiguo 24/11/2011, 11:51
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

Claro porque me olvide la variable
Bueno ultima.
Copiar y pegar nuevamente 4

Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('suspensionnorte');
?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css">
<!--
body {
    background-image: url(background.jpg);
}
.Estilo1 {color: #FFFFFF}
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; }
.Estilo11 {
    color: #990000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
    font-weight: bold;
}
.Estilo12 {
    font-size: 11px;
    color: #000000;
    font-family: Arial, Helvetica, sans-serif;
}
.Estilo14 {
    font-size: 5px;
    color: #D4D4D4;
}
.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; }
-->
</style></head>
<body>
<div align="center"><img src="head-buscador.png" width="960" height="160"></div>
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
      
 
if(isset($_POST['cmdBuscar'])){   

    
//inicializamos $WHERE
    
$WHERE =  ' WHERE ';
    
//REsuoeramos los valores por POST
    
$idlinea     $_POST['selLinea'];
    
$idrubro     $_POST['selRubro'];
    
$idmarca     $_POST['selMarca'];
    
$idmodelo    $_POST['selModelo'];
    
    
    
//creamos al array con los nombres de los campos de la tabla 
    //producto y le asignamos a cada uno el valor por POST
    
$valores = array(
        
'idlinea'=>$idlinea,
        
'idrubro'=>$idrubro,
        
'idmarca'=>$idmarca,
        
'idmodelo'=>$idmodelo
    
);
    
//recorremos el array, concatenando AND luego de cada igualdad
    //$id es el indice del array, y a su vez es el nombre campo
    //$valor es valor por POST
    //luego viene el AND
    
foreach($valores as $id => $valor)
    {
        if(
$valor != "")//si el POST es "algo"
        
{
            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no
        
}
    }
    
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios
    //entonces $WHERE es nada
    
if(trim($WHERE) == 'WHERE')
    {
        
$WHERE '';
    }




      
      
$sql "SELECT * FROM producto $WHERE; ";
      
      
      
      
      
      
      
    
$tabla mysql_query($sql) or die(mysql_error());
    if (
mysql_num_rows($tabla) > 0) {
        while (
$registro mysql_fetch_array($tabla)) {
    
?>
          <tr>
            <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
        <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
          <?php echo $registro['titulo']; ?><br>
        </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
        <br>
        </p>      </td>
        <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
          Precio: $ <?php echo $registro['precio']; ?></span></td>
        </tr>
          
    <?php
        
}
    } else {
        echo 
"No se encontraron resultados";
    }
mysql_free_result($tabla);
 }

mysql_close($conexion);
?>
__________________
la la la
  #19 (permalink)  
Antiguo 24/11/2011, 11:54
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Ahora pasa lo mismo que antes no aparece los resultados y cuando buscas no salta ningun error pero me escribe esto debajo:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
  #20 (permalink)  
Antiguo 24/11/2011, 11:57
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

Ok vamos bien,
cambia esta linea

$sql = "SELECT * FROM producto $WHERE; ";


por esta

echo $sql = "SELECT * FROM producto $WHERE; "; exit;


y pone aca lo que dice al presionar boton
__________________
la la la
  #21 (permalink)  
Antiguo 24/11/2011, 11:58
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Ahora sigue sin aparecer los resultados y en la busqueda cambio de texto:

SELECT * FROM producto WHERE idlinea = -1 AND idrubro = -1 AND idmarca = -1 AND idmodelo = -1 AND ;
  #22 (permalink)  
Antiguo 24/11/2011, 12:02
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

ok volve a cambiar la linea por al enterior y
buscá en todos los select el valor -1 y reemplezalo por "" doble comilla

esto
<option value="-1" selected>Todas</option>

por esto
<option value="" selected>Todas</option>


en todos los que haya
__________________
la la la
  #23 (permalink)  
Antiguo 24/11/2011, 12:06
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Ahora sigue igual sin aparecer el contenido y en la busqueda aparece este texto:

SELECT * FROM producto ;
  #24 (permalink)  
Antiguo 24/11/2011, 12:09
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

no cambiaste la linea anteriror

echo $sql = "SELECT * FROM producto $WHERE; "; exit;

DEBE QUEDAR ASI:
$sql = "SELECT * FROM producto $WHERE; ";
__________________
la la la
  #25 (permalink)  
Antiguo 24/11/2011, 12:14
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Cuando buscas todos los productos aparecen pero sin el paginar y cuando queres filtrar la busqueda aparece:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1

Y si no buscas queda todo en blanco !
  #26 (permalink)  
Antiguo 24/11/2011, 12:16
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

ok pegua todo el codigo
__________________
la la la
  #27 (permalink)  
Antiguo 24/11/2011, 12:18
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Código PHP:
<?php 
$conexion 
mysql_connect('localhost''root'''); 
mysql_select_db('suspensionnorte'); 
?> 
<html> 
<head> 
<title>Reporte de Propiedades</title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><style type="text/css"> 
<!-- 
body { 
    background-image: url(background.jpg); 

.Estilo1 {color: #FFFFFF} 
.Estilo7 {color: #000000; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12px; } 
.Estilo11 { 
    color: #990000; 
    font-family: Verdana, Arial, Helvetica, sans-serif; 
    font-size: 12px; 
    font-weight: bold; 

.Estilo12 { 
    font-size: 11px; 
    color: #000000; 
    font-family: Arial, Helvetica, sans-serif; 

.Estilo14 { 
    font-size: 5px; 
    color: #D4D4D4; 

.Estilo16 {font-size: 12px; color: #000000; font-family: Arial, Helvetica, sans-serif; font-weight: bold; } 
--> 
</style></head> 
<body> 
<div align="center"><img src="head-buscador.png" width="960" height="160"></div> 
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1"> 
    <label> 
  <div align="center" class="Estilo7"> 
    <table width="58%" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
        <td><span class="Estilo16">C&oacute;digo</span><br> 
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td> 
        <td><span class="Estilo16">Linea</span><br> 
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px"> 
            <option value="" selected>Todas</option> 
            <?php 
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades 
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla 
        
?> 
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option> 
            <?php }  // termina la zona de repeticion 
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla 
        
?> 
          </select></td> 
        <td><span class="Estilo16">Rubro<br> 
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px"> 
            <option value="" selected>Todas</option> 
            <?php 
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades 
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla 
 
?> 
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option> 
            <?php 
     
// termina la zona de repeticion 
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla 
 
?> 
          </select></td> 
        <td><span class="Estilo16">Marca<br> 
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px"> 
            <option value="" selected>Todas</option> 
            <?php 
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades 
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla 
?> 
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option> 
            <?php 
    
// termina la zona de repeticion 
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla 
?> 
          </select></td> 
        <td> <span class="Estilo16">Modelo<br> 
        </span> 
          <select name="selModelo" style="width:120px; height:18px" id="selModelo"> 
            <option value="" selected>Todas</option> 
            <?php 
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades 
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla 
?> 
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option> 
            <?php 
    
// termina la zona de repeticion 
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla 
?> 
          </select> 
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar"> 
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td> 
      </tr> 
    </table> 
  </div> 
    </label> 
    <div align="center"></div> 
</form> 

<div align="center"> 
  <table width="58%" border="0" cellspacing="0" cellpadding="0"> 
    <tr> 
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td> 
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0"> 
      <?php 
       
 
if(isset($_POST['cmdBuscar'])){    

    
//inicializamos $WHERE 
    
$WHERE =  ' WHERE '
    
//REsuoeramos los valores por POST 
    
$idlinea     $_POST['selLinea']; 
    
$idrubro     $_POST['selRubro']; 
    
$idmarca     $_POST['selMarca']; 
    
$idmodelo    $_POST['selModelo']; 
     
     
    
//creamos al array con los nombres de los campos de la tabla  
    //producto y le asignamos a cada uno el valor por POST 
    
$valores = array( 
        
'idlinea'=>$idlinea
        
'idrubro'=>$idrubro
        
'idmarca'=>$idmarca
        
'idmodelo'=>$idmodelo 
    
); 
    
//recorremos el array, concatenando AND luego de cada igualdad 
    //$id es el indice del array, y a su vez es el nombre campo 
    //$valor es valor por POST 
    //luego viene el AND 
    
foreach($valores as $id => $valor
    { 
        if(
$valor != "")//si el POST es "algo" 
        

            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no 
        

    } 
     
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios 
    //entonces $WHERE es nada 
    
if(trim($WHERE) == 'WHERE'
    { 
        
$WHERE ''
    } 




       
      
$sql "SELECT * FROM producto $WHERE; "
       
       
       
       
       
       
       
    
$tabla mysql_query($sql) or die(mysql_error()); 
    if (
mysql_num_rows($tabla) > 0) { 
        while (
$registro mysql_fetch_array($tabla)) { 
    
?> 
          <tr> 
            <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td> 
        <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br> 
          <?php echo $registro['titulo']; ?><br> 
        </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br> 
        <br> 
        </p>      </td> 
        <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br> 
          Precio: $ <?php echo $registro['precio']; ?></span></td> 
        </tr> 
           
    <?php 
        

    } else { 
        echo 
"No se encontraron resultados"
    } 
mysql_free_result($tabla); 
 } 

mysql_close($conexion); 
?>
  #28 (permalink)  
Antiguo 24/11/2011, 12:25
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

Fiajte ahora


Código PHP:
<?php
$conexion 
mysql_connect('localhost''root''');
mysql_select_db('catalogo');


 if(isset(
$_POST['cmdBuscar'])){    

    
//inicializamos $WHERE 
    
$WHERE =  ' WHERE '
    
//REsuoeramos los valores por POST 
    
$idlinea     $_POST['selLinea']; 
    
$idrubro     $_POST['selRubro']; 
    
$idmarca     $_POST['selMarca']; 
    
$idmodelo    $_POST['selModelo']; 
     
     
    
//creamos al array con los nombres de los campos de la tabla  
    //producto y le asignamos a cada uno el valor por POST 
    
$valores = array( 
        
'idlinea'=>$idlinea
        
'idrubro'=>$idrubro
        
'idmarca'=>$idmarca
        
'idmodelo'=>$idmodelo 
    
); 
    
//recorremos el array, concatenando AND luego de cada igualdad 
    //$id es el indice del array, y a su vez es el nombre campo 
    //$valor es valor por POST 
    //luego viene el AND 
    
foreach($valores as $id => $valor
    { 
        if(
$valor != "" && $valor != -1)//si el POST es "algo" 
        

            
$WHERE .= $id.' = '.$valor.' AND ';//entoces concatemnamos, sino no 
        

    } 
     
    
//si $WHERE sigue valiendo ' WHERE ' , es decir que todos los POST estaban vacios 
    //entonces $WHERE es nada 
    
if(trim($WHERE) == 'WHERE'
    { 
        
$WHERE ''
    } 




       
      
$sql "SELECT * FROM producto $WHERE; "
 }









?>
<html>
<head>
<title>Reporte de Propiedades</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<form action="busquedapropiedades.php" method="post" name="form1" class="Estilo1">
    <label>
  <div align="center" class="Estilo7">
    <table width="58%" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td><span class="Estilo16">C&oacute;digo</span><br>
        <input name="txtBusqueda" type="text" class="Estilo12" id="txtBusqueda" style="width:110px; height:18px" value="<?php echo @$_POST['txtBusqueda']?>"></td>
        <td><span class="Estilo16">Linea</span><br>
          <select name="selLinea" class="Estilo12" id="selLinea" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
            $tablalinea 
mysql_query("SELECT * FROM linea ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
            
while ($registrolinea mysql_fetch_array($tablalinea)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
        
?>
            <option value="<?php echo $registrolinea['id']; ?><?php echo (@$_POST['selLinea'] == $registrolinea['id'] ? 'selected' false)?>><?php echo $registrolinea['nombre']; ?></option>
            <?php }  // termina la zona de repeticion
            
mysql_free_result($tablalinea); // se libera la memoria usada por la tabla
        
?>
          </select></td>
        <td><span class="Estilo16">Rubro<br>
        </span>          <select name="selRubro" class="Estilo12" id="selRubro"  style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
     $tablarubro 
mysql_query("SELECT * FROM rubro ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
     
while ($registrorubro mysql_fetch_array($tablarubro)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
 
?>
            <option value="<?php echo $registrorubro['id']; ?><?php echo (@$_POST['selLinea'] == $registrorubro['id'] ? 'selected' false)?>><?php echo $registrorubro['nombre']; ?></option>
            <?php
     
// termina la zona de repeticion
     
mysql_free_result($tablarubro); // se libera la memoria usada por la tabla
 
?>
          </select></td>
        <td><span class="Estilo16">Marca<br>
          </span>          <select name="selMarca" class="Estilo12" id="selMarca" style="width:120px; height:18px">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamarca 
mysql_query("SELECT * FROM marca ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromarca mysql_fetch_array($tablamarca)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromarca['id']; ?><?php echo (@$_POST['selLinea'] == $registromarca['id'] ? 'selected' false)?>><?php echo $registromarca['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamarca); // se libera la memoria usada por la tabla
?>
          </select></td>
        <td> <span class="Estilo16">Modelo<br>
        </span>
          <select name="selModelo" style="width:120px; height:18px" id="selModelo">
            <option value="-1" selected>Todas</option>
            <?php
    $tablamodelo 
mysql_query("SELECT * FROM modelo ORDER BY nombre ASC") or die(mysql_error()); // Seleccionamos las ciudades de la tabla ciudades
    
while ($registromodelo mysql_fetch_array($tablamodelo)) { // Vamos a repetir una Option (opcion), de la Lista Desplegable, por cada ciudad en la tabla
?>
            <option value="<?php echo $registromodelo['id']; ?><?php echo (@$_POST['selLinea'] == $registromodelo['id'] ? 'selected' false)?>><?php echo $registromodelo['nombre']; ?></option>
            <?php
    
// termina la zona de repeticion
    
mysql_free_result($tablamodelo); // se libera la memoria usada por la tabla
?>
          </select>
          <input name="cmdBuscar" type="submit" class="Estilo12" id="cmdBuscar" style="width:50px; height:18px" value="Buscar">
        <input name="cmdBuscar2" type="reset" class="Estilo12" id="cmdBuscar2" style="width:50px; height:18px" value="Limpiar"></td>
      </tr>
    </table>
  </div>
    </label>
    <div align="center"></div>
</form>

<div align="center">
  <table width="58%" border="0" cellspacing="0" cellpadding="0">
    <tr>
      <td width="20%" align="center" valign="top"><img src="http://www.distrisurweb.com.ar/imagenes/piclat2.jpg" alt="p0"/> </td>
      <td width="80%" valign="top"><table width="540" height="94" border="0" cellpadding="0" cellspacing="0">
      <?php
    
if(!isset($_POST['buecar'])){  
    
$sql "SELECT * FROM producto p ";
    
$sql .= "LEFT JOIN linea l ON l.id = p.idlinea ";
    
$sql .= "LEFT JOIN rubro r ON r.id = p.idrubro ";
    
$sql .= "LEFT JOIN marca m ON m.id = p.idmarca ";
    
$sql .= "LEFT JOIN marca a ON a.id = p.idmodelo ";
    
$sql .= "WHERE 1";
    if (isset(
$_POST['selLinea']) && $_POST['selLinea'] != -1) {
        
$sql .= " AND l.id = " $_POST['selLinea'];
    }
    if (isset(
$_POST['selRubro']) && $_POST['selRubro'] != -1) {
        
$sql .= " AND r.id = " $_POST['selRubro'];
    }
    if (isset(
$_POST['selMarca']) && $_POST['selMarca'] != -1) {
        
$sql .= " AND m.id = " $_POST['selMarca'];
    }
    if (isset(
$_POST['selModelo']) && $_POST['selModelo'] != -1) {
        
$sql .= " AND a.id = " $_POST['selModelo'];
    }
    if (isset(
$_POST['txtBusqueda'])) {
        
$sql .= " AND p.titulo LIKE '%" $_POST['txtBusqueda'] . "%'";
    }
    
    
$sql .= " ORDER BY p.id DESC";
}



$tabla mysql_query($sql) or die(mysql_error());
if (
mysql_num_rows($tabla) > 0) {
    while (
$registro mysql_fetch_array($tabla)) {
?>
      <tr>
        <td width="90" height="85" align="center" class="Estilo1"><img src="http://www.distrisurweb.com.ar/imagenes/productos.jpg" alt="001P"/> </td>
    <td width="300" valign="top" class="Estilo1"><p><span class="Estilo11"><span class="Estilo14">a</span><br>
      <?php echo $registro['titulo']; ?><br>
    </span><span class="Estilo7"><?php echo $registro['descripcion']; ?></span><br>
    <br>
    </p>      </td>
    <td width="150" align="right" valign="top" class="Estilo1"><span class="Estilo7"><span class="Estilo11"><span class="Estilo14">a</span></span><br>
      Precio: $ <?php echo $registro['precio']; ?></span></td>
    </tr>
      
<?php
    
}
} else {
    echo 
"No se encontraron resultados";
}
mysql_free_result($tabla);
mysql_close($conexion);
?>

  </table></td>
    </tr>
  </table>
</div>
</tr>
</body>
</html>
__________________
la la la
  #29 (permalink)  
Antiguo 24/11/2011, 12:28
 
Fecha de Ingreso: enero-2010
Mensajes: 400
Antigüedad: 14 años, 3 meses
Puntos: 6
Respuesta: Paginacion de Resultados

Anda todo normal como siempre, no se le agrego el paginador :s
  #30 (permalink)  
Antiguo 24/11/2011, 12:30
Avatar de truman_truman  
Fecha de Ingreso: febrero-2010
Ubicación: /home/user
Mensajes: 1.341
Antigüedad: 14 años, 2 meses
Puntos: 177
Respuesta: Paginacion de Resultados

ok borra todo y ponelo como al principio, lo que yo hice no es paginador, disculpá
__________________
la la la

Etiquetas: html, mysql, paginacion, registro, resultados, sql, tabla
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 08:35.