Foros del Web » Programando para Internet » PHP »

la búsqueda se me triplica...

Estas en el tema de la búsqueda se me triplica... en el foro de PHP en Foros del Web. Hola comunidad... Resulta que cuando hago una búsqueda se me triplican los resultados el copio el código: Código PHP: $registros  =  8 ; $pagina  = isset( ...
  #1 (permalink)  
Antiguo 14/09/2012, 14:59
Avatar de elsolodigno  
Fecha de Ingreso: agosto-2009
Mensajes: 225
Antigüedad: 14 años, 8 meses
Puntos: 2
Pregunta la búsqueda se me triplica...

Hola comunidad...

Resulta que cuando hago una búsqueda se me triplican los resultados

el copio el código:

Código PHP:
$registros 8;
$pagina = isset($_GET['pagina']) ? $_GET['pagina'] : 1;

if (!
$pagina) { 
    
$inicio 0
    
$pagina 1

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

    
    
$search $_GET['search']; 
            
    
$resultados mysql_query("SELECT * FROM productos INNER JOIN marcas WHERE nombreproducto LIKE '%".$search."%' OR nombremarca LIKE '%".$search."%'"); 
    
$total_registros mysql_num_rows($resultados);  
        
    
$resultados mysql_query("SELECT * FROM productos INNER JOIN marcas WHERE nombreproducto LIKE '%".$search."%' OR nombremarca LIKE '%".$search."%' LIMIT $inicio, $registros");     
        
    
$total_paginas ceil($total_registros $registros);                       

    if(
$total_registros) {

......
...... 


Uso dos tablas:

productos:
id
idmarca
nombreproducto

marcas:
id
nombremarca


Cuál puede ser el error?.

Muchas gracias!.

Nota: la variable $página es para hacer paginación más abajo.
  #2 (permalink)  
Antiguo 14/09/2012, 16:14
Avatar de antoniopol  
Fecha de Ingreso: agosto-2012
Ubicación: Valladolid
Mensajes: 114
Antigüedad: 11 años, 8 meses
Puntos: 21
Respuesta: la búsqueda se me triplica...

Actualmente estas cruzando dos tablas sin un punto de unión, te falta el on del inner join
Código MySQL:
Ver original
  1. $resultados = mysql_query("SELECT * FROM productos INNER JOIN marcas on productos.idmarca=marcas.id WHERE nombreproducto LIKE '%".$search."%' OR nombremarca LIKE '%".$search."%'");

Creo que ese podría ser el error
__________________
>> Blog de desarrollo web.
>> @antoniopol06 amante de la Web =D
  #3 (permalink)  
Antiguo 14/09/2012, 17:23
Avatar de elsolodigno  
Fecha de Ingreso: agosto-2009
Mensajes: 225
Antigüedad: 14 años, 8 meses
Puntos: 2
Respuesta: la búsqueda se me triplica...

Tenías razón antoniopol!. Muchas gracias!.

Etiquetas: mysql, registro, tabla, variables
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 13:23.