Foros del Web » Programando para Internet » PHP »

Problemas con galeria horizontal y vertical

Estas en el tema de Problemas con galeria horizontal y vertical en el foro de PHP en Foros del Web. Saludos señores, estoy haciendo una galeria y como es primera vez q se me ocurre esta locura q hice pero se q es valida y ...
  #1 (permalink)  
Antiguo 18/07/2008, 10:49
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
Problemas con galeria horizontal y vertical

Saludos señores,
estoy haciendo una galeria y como es primera vez q se me ocurre esta locura q hice pero se q es valida y existe una solucion...
bueno mi idea era q me mostrara 3 imagenes por fila con ul total de 6 imagenes por pagina y luego me pasara a otra...
mi problema...
perfecto me muestra las 3 fotos horizontal... pero me no me hace el conteo total por pagina... me explico..
deberian ser 6 fotos en total por pagina, en mi base de datos ingrese 9 fotografias para probar su funcionamiento y al momento de hacer la prueba de impresion de datos me arroja todos los resultados en la misma pagina... o sea me imprime todas las imagenes q esten en la base de datos... y en el contador me dice
Registros 1 a 6 de 9 <--- y me muestra el link siguiente y ultimo como si estuviese haciendo todo bien... les dejo mi codigo y una imagen de muestra



Código PHP:
<?php require_once('admin/Connections/orocauchos.php'); ?>
<?php 
include('conect.php');

// Variables de Configuración -----------------------------------
// Define el numero de Filas
$n_filas=3;

//***************************************************************
@$cat=$_REQUEST['id'];
//$cat=8;

$fotos = array();
        
$sql="SELECT * FROM productos ORDER BY id ASC";
mysql_select_db ('conect');
    
$sql_exec=mysql_query($sql);

$tottal=113;
// ------------------------------------------------------------------------------------------------------------------
$vert=$tottal/$n_filas;
$vert=round($vert);

                
/*function npad($num, $max = 0)
{
    return str_pad($num, $max, '0', STR_PAD_LEFT);
} */



?>
<?php
$currentPage 
$_SERVER["PHP_SELF"];

$maxRows_Recordset1 6;
$pageNum_Recordset1 0;
if (isset(
$_GET['pageNum_Recordset1'])) {
  
$pageNum_Recordset1 $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 $pageNum_Recordset1 $maxRows_Recordset1;

mysql_select_db($database_orocauchos$orocauchos);
$query_Recordset1 "SELECT * FROM productos";
$query_limit_Recordset1 sprintf("%s LIMIT %d, %d"$query_Recordset1$startRow_Recordset1$maxRows_Recordset1);
$Recordset1 mysql_query($query_limit_Recordset1$orocauchos) or die(mysql_error());
$row_Recordset1 mysql_fetch_assoc($Recordset1);

if (isset(
$_GET['totalRows_Recordset1'])) {
  
$totalRows_Recordset1 $_GET['totalRows_Recordset1'];
} else {
  
$all_Recordset1 mysql_query($query_Recordset1);
  
$totalRows_Recordset1 mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;



$queryString_Recordset1 "";
if (!empty(
$_SERVER['QUERY_STRING'])) {
  
$params explode("&"$_SERVER['QUERY_STRING']);
  
$newParams = array();
  foreach (
$params as $param) {
    if (
stristr($param"pageNum_Recordset1") == false && 
        
stristr($param"totalRows_Recordset1") == false) {
      
array_push($newParams$param);
    }
  }
  if (
count($newParams) != 0) {
    
$queryString_Recordset1 "&" htmlentities(implode("&"$newParams));
  }
}
$queryString_Recordset1 sprintf("&totalRows_Recordset1=%d%s"$totalRows_Recordset1$queryString_Recordset1);
?>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->

       
 
        <?php
        $a
=0;// Colocando el contador horizontal en 0
        
$i=1;// Colocando el contador vertical en 0
        
$w=0;//Colocando un contador para el mensaje de "No hay articulos en esta acategoria"
        
            
while($row=mysql_fetch_assoc($sql_exec)){
            
$w=w+1;
                if (
$a==0){
                echo 
'<tr>';
                }
                
$a=$a+1;
                
$fotos[$i.'-'.$a] = $row['imagen'];
                
                
$num$num 1;


echo 
"<td align='center' valign='top'>
    <table width='200' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td height='151'  align='center' valign='middle' bgcolor='#E4E4E4'><table width='150' border='0' align='center' cellpadding='0' cellspacing='0'>
      <tr>
        <td><img src='imgprod/"
.$row['imagen']."' width='150' height='101'/></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><span class='textoTitulos2'>"
.$row['nombre']."</span></td>
  </tr>
</table></br>
</td>    
"
;
            
                
$r=$a;// contador remanente para listar imagenes sin exceso
                
                    
if ($a >= $n_filas) {
                    
$a=0;// reiniciando el contador horizontal
                    
$i=$i+1;// aumentando el contador vertical
                    
echo '</tr><td></td>';
                    } 
            if (empty(
$row)) {
        echo
"
        texto de que no hay
        "
;
        break 
1;}
            
            }
            
        
?>
</table>
 <table border="0" width="50%" align="center">
                <tr class="Estilo6">
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 0) { // Show if not first page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPage0$queryString_Recordset1); ?>">Primero</a>
                      <?php // Show if not first page ?>
                  </td>
                  <td width="31%" align="center"><?php if ($pageNum_Recordset1 0) { // Show if not first page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPagemax(0$pageNum_Recordset1 1), $queryString_Recordset1); ?>">Anterior</a>
                      <?php // Show if not first page ?>
                  </td>
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 $totalPages_Recordset1) { // Show if not last page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPagemin($totalPages_Recordset1$pageNum_Recordset1 1), $queryString_Recordset1); ?>">Siguiente</a>
                      <?php // Show if not last page ?>
                  </td>
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 $totalPages_Recordset1) { // Show if not last page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPage$totalPages_Recordset1$queryString_Recordset1); ?>">&Uacute;ltimo</a>
                      <?php // Show if not last page ?>
                  </td>
                </tr>
</table>
            <div align="left"><span class="textoTitulos2">Registros </span><span class="textoRojo"><?php echo ($startRow_Recordset1 1?></span><span class="textoTitulos2"> a </span><span class="textoRojo"><?php echo min($startRow_Recordset1 $maxRows_Recordset1$totalRows_Recordset1?></span><span class="textoTitulos2"> de</span> <span class="textoRojo"><?php echo $totalRows_Recordset1 ?></span></div>
<?php
mysql_free_result
($Recordset1);
?>
Agradeceria su ayuda por favor pues primera vez q lo hago !!!

Gracias!!!
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #2 (permalink)  
Antiguo 18/07/2008, 11:44
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Respuesta: Problemas con galeria horizontal y vertical

Hola T4ke0veR
Te muestra todos tus registros por que estas usando $sql_exec al momento de listarlos, como sabes esa variable es de la consulta general. Debes de usar la variable $Recordset1.

Salud2
__________________

  #3 (permalink)  
Antiguo 18/07/2008, 14:06
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
Respuesta: Problemas con galeria horizontal y vertical

me hace lo mismo... pero imaginate esos 9 cuadros con la imagen de id = 1 .. o sea los 9 cuadros con imagenes iguales :S:S
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
  #4 (permalink)  
Antiguo 18/07/2008, 14:16
Avatar de T4ke0veR  
Fecha de Ingreso: agosto-2007
Ubicación: Quito - Ecuador
Mensajes: 1.720
Antigüedad: 16 años, 8 meses
Puntos: 28
Respuesta: Problemas con galeria horizontal y vertical

Resuelto...

Código PHP:

<?php require_once('admin/Connections/orocauchos.php'); ?>
<?php 
include('conect.php');


$currentPage $_SERVER["PHP_SELF"];

$n_filas=3;
$maxRows_Recordset1 6;
$pageNum_Recordset1 0;
if (isset(
$_GET['pageNum_Recordset1'])) {
  
$pageNum_Recordset1 $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 $pageNum_Recordset1 $maxRows_Recordset1;

mysql_select_db($database_orocauchos$orocauchos);
$query_Recordset1 "SELECT * FROM productos";
$query_limit_Recordset1 sprintf("%s LIMIT %d, %d"$query_Recordset1$startRow_Recordset1$maxRows_Recordset1);
$Recordset1 mysql_query($query_limit_Recordset1$orocauchos) or die(mysql_error());


if (isset(
$_GET['totalRows_Recordset1'])) {
  
$totalRows_Recordset1 $_GET['totalRows_Recordset1'];
} else {
  
$all_Recordset1 mysql_query($query_Recordset1);
  
$totalRows_Recordset1 mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;



$queryString_Recordset1 "";
if (!empty(
$_SERVER['QUERY_STRING'])) {
  
$params explode("&"$_SERVER['QUERY_STRING']);
  
$newParams = array();
  foreach (
$params as $param) {
    if (
stristr($param"pageNum_Recordset1") == false && 
        
stristr($param"totalRows_Recordset1") == false) {
      
array_push($newParams$param);
    }
  }
  if (
count($newParams) != 0) {
    
$queryString_Recordset1 "&" htmlentities(implode("&"$newParams));
  }
}
$queryString_Recordset1 sprintf("&totalRows_Recordset1=%d%s"$totalRows_Recordset1$queryString_Recordset1);

$cat=8;

$fotos = array();
        
$sql="SELECT * FROM productos ORDER BY id ASC";
mysql_select_db ('conect');
    
$sql_exec=mysql_query($sql);

$tottal=113;
// ------------------------------------------------------------------------------------------------------------------
$vert=$tottal/$n_filas;
$vert=round($vert);

                
/*function npad($num, $max = 0)
{
    return str_pad($num, $max, '0', STR_PAD_LEFT);
} */
?>
<table width="100%" border="0" align="center" cellpadding="0" cellspacing="0">
  <!--DWLayoutTable-->

       
 
        <?php
        $a
=0;// Colocando el contador horizontal en 0
        
$i=1;// Colocando el contador vertical en 0
        
$w=0;//Colocando un contador para el mensaje de "No hay articulos en esta acategoria"
        
            
while($row_Recordset1=mysql_fetch_assoc($Recordset1)){
            
$w=w+1;
                if (
$a==0){
                echo 
'<tr>';
                }
                
$a=$a+1;
                
$fotos[$i.'-'.$a] = $row['imagen'];
                
                
$num$num 1;


echo 
"<td align='center' valign='top'>
    <table width='200' border='0' cellspacing='0' cellpadding='0'>
  <tr>
    <td height='151'  align='center' valign='middle' bgcolor='#E4E4E4'><table width='150' border='0' align='center' cellpadding='0' cellspacing='0'>
      <tr>
        <td><img src='imgprod/"
.$row_Recordset1['imagen']."' width='150' height='101'/></td>
      </tr>
    </table></td>
  </tr>
  <tr>
    <td><span class='textoTitulos2'>"
.$row_Recordset1['nombre']."</span></td>
  </tr>
</table></br>
</td>    
"
;
            
                
$r=$a;// contador remanente para listar imagenes sin exceso
                
                    
if ($a >= $n_filas) {
                    
$a=0;// reiniciando el contador horizontal
                    
$i=$i+1;// aumentando el contador vertical
                    
echo '</tr><td></td>';
                    } 
            if (empty(
$row_Recordset1)) {
        echo
"
        texto de que no hay
        "
;
        break 
1;}
            
            }
            
        
?>
</table>
 <table border="0" width="50%" align="center">
                <tr class="Estilo6">
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 0) { // Show if not first page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPage0$queryString_Recordset1); ?>">Primero</a>
                      <?php // Show if not first page ?>
                  </td>
                  <td width="31%" align="center"><?php if ($pageNum_Recordset1 0) { // Show if not first page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPagemax(0$pageNum_Recordset1 1), $queryString_Recordset1); ?>">Anterior</a>
                      <?php // Show if not first page ?>
                  </td>
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 $totalPages_Recordset1) { // Show if not last page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPagemin($totalPages_Recordset1$pageNum_Recordset1 1), $queryString_Recordset1); ?>">Siguiente</a>
                      <?php // Show if not last page ?>
                  </td>
                  <td width="23%" align="center"><?php if ($pageNum_Recordset1 $totalPages_Recordset1) { // Show if not last page ?>
                      <a href="<?php printf("%s?pageNum_Recordset1=%d%s"$currentPage$totalPages_Recordset1$queryString_Recordset1); ?>">&Uacute;ltimo</a>
                      <?php // Show if not last page ?>
                  </td>
                </tr>
</table>
            <div align="left"><span class="textoTitulos2">Registros </span><span class="textoRojo"><?php echo ($startRow_Recordset1 1?></span><span class="textoTitulos2"> a </span><span class="textoRojo"><?php echo min($startRow_Recordset1 $maxRows_Recordset1$totalRows_Recordset1?></span><span class="textoTitulos2"> de</span> <span class="textoRojo"><?php echo $totalRows_Recordset1 ?></span></div>
<?php
mysql_free_result
($Recordset1);
?>
__________________
Diseño gráfico, Web, imagen corporativa, publicidad ...
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 16:40.