Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/07/2009, 10:22
xfer2
(Desactivado)
 
Fecha de Ingreso: junio-2009
Mensajes: 256
Antigüedad: 14 años, 10 meses
Puntos: 1
problema de consulta

buenas. como lo explico. bueno. tengo una base de datos que me muestra los productos usb agrupados por categorias. Las categorias son economicos, clasicos y ejecutivos.

yo estoy en la categoria ejecutivos y muestro los productos en esa categoria. los productos usb los muestro por codigos, es decir no le coloco el campo autoincreentado, solo muestro los codigos ingresados por un administrador. tengo el producto con el codigo 800, y lo que quiero es que yo al hacer clic en el codigo 800, me debe mostrar el codigo 800 del usb con sus datos pero a la vez mostrarme los demas productos de la categoria ejecutivosy asi con los demas productos.

como lo hago.

El archivo que muestro los productos agrupados por categorias .

Código PHP:
$sql_usb "SELECT p.*, c.*, m.* FROM miusb_productos p, miusb_categorias c, 
                    miusb_modelos m
                    WHERE p.idcategoria = c.idcategoria
                    AND p.idmodelo = m.idmodelo
                    GROUP BY p.idcategoria"
;
$rpta_usb mysql_query($sql_usb) or die(mysql_error());
        
$i 1;
while(
$fila_usb mysql_fetch_array($rpta_usb)){
        
#consulto las demas categorias de los USB.
$resultado_cat_productos "SELECT p.*, c.*, m.* FROM miusb_productos p, miusb_categorias c, miusb_modelos m
WHERE p.idcategoria = c.idcategoria
AND p.idmodelo = m.idmodelo
AND p.idcategoria = '"
.$fila_usb['idcategoria']."'";

$rs_resultado_cat_productos mysql_query($resultado_cat_productos) or die(mysql_error()); 
Código PHP:
    <table width="792" border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td id="img_categorias"><div id="titulo_categorias">&nbsp;&nbsp;<?=$fila_usb['nombre_categoria']; ?></div></td>
      </tr>
      <tr>
        <td height="15">&nbsp;</td>
      </tr>
      <tr>
        <td>
            <!--CONTENIDOS POR CATEGORIAS USB.-->
            <table border = "0" cellpadding="0" cellspacing = "0">
            <?php
                
                $columnes 
5# Número de columnas (variable)
                    
        
for ($i=1$fila_producto mysql_fetch_array($rs_resultado_cat_productos); $i++) {
            
$resto = ($i &#37; $columnes); // Número de celda del <tr> en que nos encontramos 
                
if ($resto == 1) {
                                
            
?>
            <tr>
              <?php        
                                
# Si es la primera celda, abrimos <tr> 
              
?>
              <td width = "244">
                <table style="width:153px;" border="0" cellpadding="0" cellspacing="0" id = "border_redon_producto">
                  <tr>
                    <td height="6"></td>
                  </tr>
                  <tr>
                    <td id = "titulo_codigo">
                        Cod.: 
                        <?=$fila_producto['codigo_producto']; ?>                
                    </td>
                  </tr>
                  <tr>
                    <td>&nbsp;</td>
                  </tr>
                  <tr>
                    <td>
                    <div align="center">
                        <a href="miusb_productos.php?categoria=<?=$fila_producto['idcategoria']; ?>">
                            <img src="productos/<?=$fila_producto['imagen_producto']; ?>" width="110" border="0" style="cursor:pointer;" title="haga clic para ver mas" class="loading" />                        
                        </a>                    
                    </div>
                    </td>
                  </tr>
                  <tr>
                    <td bgcolor="#E0E0DF"><a href="miusb_productos.php?categoria=<?=$fila_producto['idcategoria']; ?>"><img src="images/ver_detalle.jpg" width="151" height="14" border="0" /></a></td>
                  </tr>
                  <tr>
                    <td height="7"></td>
                  </tr>
                </table>          
              </td>
              <?php        if ($resto == 0) {    ?>
            </tr>
            <?php            # Si es la última celda, cerramos </tr> 
                        

                                        
                            if (
$resto <> 0) { # Si el resultado no es múltiple de $columnes acabamos de rellenar los huecos 
                                
$ajust $columnes $resto# Número de huecos necesarios 
                                    
for ($j 2$j $ajust$j++) {    
            
?>
            <tr>
              <td>&nbsp;</td>
              <?php                    }             ?>
            </tr>
            <?php
                            
# Cerramos la última línea
                            
                                                           
            
?>
            </table>        
        </td>
      </tr>
      <tr>
        <td height="15"></td>
      </tr>
    </table>
    <?php
        $i
++;
        }
    
?>
el otro archivo que muestro los resultados de mi consulta. bueno es con paginacion. en eso no hay problemas.

Código PHP:
    $registros 10;
    
    if (!
$pagina) { 
        
$inicio 0
        
$pagina 1
    }else{ 
        
$inicio = ($pagina 1) * $registros
    } 
    
    
$sql_ver_producto "SELECT p. * , c. * , m. * FROM miusb_productos p,  miusb_categorias c, miusb_modelos m
                         WHERE p.idcategoria = c.idcategoria
                         AND p.idmodelo = m.idmodelo  
                         AND p.idcategoria = '"
.$_GET['categoria']."'
                         ORDER BY p.idcategoria DESC"
;
    
$rpta_ver_producto mysql_query($sql_ver_producto) or die(mysql_error());
    
$total_registros mysql_num_rows($rpta_ver_producto);

    
$resultado_productos "SELECT p. * , c. * , m. * FROM miusb_productos p, miusb_categorias c, miusb_modelos m
                            WHERE p.idcategoria = c.idcategoria
                            AND p.idmodelo = m.idmodelo 
                            AND p.idcategoria = '"
.$_GET['categoria']."'
                            ORDER BY p.idcategoria DESC
                            LIMIT $inicio, $registros"
;
    
$rs_resultado_productos mysql_query($resultado_productos) or die(mysql_error());
    
$filas_productos mysql_num_rows($rs_resultado_productos);
    
    
$total_paginas ceil($total_registros $registros); 
me pueden ayudar por favor con mi problema.

Última edición por xfer2; 06/07/2009 a las 11:14 Razón: correcion del texto. nadie responde a mi pregunta.