Foros del Web » Programando para Internet » PHP »

Fijar tamaño Celda/foto

Estas en el tema de Fijar tamaño Celda/foto en el foro de PHP en Foros del Web. Hola: Estoy elaborando un formulario para mostrar una serie de articulos, que tengo en una base de datos. Utilizo una tabla, y una de las ...
  #1 (permalink)  
Antiguo 13/06/2011, 12:34
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años, 8 meses
Puntos: 1
Fijar tamaño Celda/foto

Hola:

Estoy elaborando un formulario para mostrar una serie de articulos, que tengo en una base de datos.

Utilizo una tabla, y una de las celdas es una foto.

El problema viene que tengo que fijar el tamaño de una foto en una celda. Se tiene que mantener la proporcion de las imagenes y que la celda no exceda de 200px de ancho

Alguna idea?

Un saludo
  #2 (permalink)  
Antiguo 13/06/2011, 12:37
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Fijar tamaño Celda/foto

Trata esto http://www.forosdelweb.com/f68/aport...agenes-912637/ y mira el quinto ejemplo a ver si te ayuda.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 13/06/2011, 12:48
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

=D jejeje, bueno pues como te dije... si estas usando PHP para imprimir las imagenes que me imagino que si, por que las estas obteniendo de una BD puedes hacer uso de esta funcion...

Código PHP:
Ver original
  1. function imageResize($width, $height, $_MaxWidth, $_MaxHeight, $OtherPass) {
  2.         if ($width > $height) {
  3.             $percentage = ($_MaxWidth / $width);
  4.         } else {
  5.             $percentage = ($_MaxHeight / $height);
  6.         }
  7.             $width = round($width * $percentage);
  8.             $height = round(($height * $percentage));
  9.             if($width > $_MaxWidth){
  10.                 $TempWidth = ($width - $_MaxWidth);
  11.                 $width = ($width - $TempWidth);
  12.                 $height = ($height - $TempWidth);
  13.             }
  14.             if($height > $_MaxHeight){
  15.                 $TempHeight = ($height - $_MaxHeight);
  16.                 $height = ($height - $TempHeight);
  17.                 $width = ($width - $TempHeight);
  18.             }
  19.             if($OtherPass){
  20.                 imageResize($width, $height, $_MaxWidth, $_MaxHeight, false);
  21.             }
  22.             return "width=\"$width\" height=\"$height\"";
  23. }

lo que hace esta funcion es ajustar las dimensiones de una imagen a un contenedor, en este caso tu celda de 200px...

los parametros que recibe esta funcionn son:

- El ancho de la imagen
- El alto de la imagen
- El Anchio maximo en tu caso 200px
- El alto Maximo si no tienes puedes ponerle 10px por ejemplo..
- Valor Boleano que indica si se hace una segunda pasada....

para usarla solo necesitas obtener el tamaño de la imagen....
y para hacer eso puedes hacer uso de la funcion de PHP getimagesize
por ejemplo...



Código PHP:
Ver original
  1. $src = "Ruta de tu imagen"
  2.  
  3. $tamano = getimagesize($src);
  4.  
  5. $reducir = imageResize($tamano[0], $tamano[1], 200, 10, true);
  6.  
  7. echo '<table>
  8.   <tr>
  9.      <td width="200">'.<img src=\''.$src.'\' '.$reducir.' />.'</td>
  10.       <td>informacion</td>
  11.       <td>informacion</td>
  12.       <td>informacion</td>
  13.    </tr>
  14. </table>';

con esto tus imagenes se ajustaran a tu contenedor de 200px =D

cualquier duda que tengas comenta =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #4 (permalink)  
Antiguo 13/06/2011, 12:54
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Fijar tamaño Celda/foto

@Hugo_Euan, el único problema que veo es que si la imagen es grande, el redimensionar solo lo que hace es colocar la imagen de los mismo pixeles más pequeña. Que si tiene muchos kb o tal vez mb, va a tener que cargar todo eso, lo mejor sería convertirla en pequeña usando por ejemplo el quinto ejemplo que indiqué para que así cargue de acuerdo al tamaño que desea y así no se carga bytes demás. Pero lo que indicaste es una forma de hacerlo también.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 13/06/2011, 13:01
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

abimaelrc te toda la razón la imagen conserva su tamaño en KB original...
pero sabias que al hacer un parse de imagen con PHP haces que dicha imagen pierda su calidad ?
en ámbito de diseño eso no es correcto, por lo que la solución que yo uso es redimensionar la imagen, mas no hacerle un parse...

sin embargo, a mi manera de pensar no es una problematica, debido a que las conexiones recientes no son tan lentas como las de antes. una imagen de 3000px por 2000px puede pesar hasta 253 KB y el tiempo de carga puede ser de .8 ms
yo no le veo algun problema, pero pues es cuestion de cada quien =D
respeto muchisimo tu manera de pensar =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #6 (permalink)  
Antiguo 13/06/2011, 13:06
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Fijar tamaño Celda/foto

Cita:
Iniciado por Hugo_Euan Ver Mensaje
pero sabias que al hacer un parse de imagen con PHP haces que dicha imagen pierda su calidad ?
Ahhh claro, se pierde seguro que sí. Pero entiendo que pasaría lo mismo si se redimensiona. Aunque he hecho varias pruebas con el código que brindé que no he visto mucha perdida o no se nota la perdida, digo es lo que he notado hasta ahora.

Cita:
Iniciado por Hugo_Euan Ver Mensaje
sin embargo, a mi manera de pensar no es una problematica, debido a que las conexiones recientes no son tan lentas como las de antes.
El problema ya no sería de la conexión mayormente, sino al bandwidth que algunos hosting imponen.

Solo fue una observación, por si miriamgomez no lo tenía pensando
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #7 (permalink)  
Antiguo 13/06/2011, 15:40
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Cita:
Iniciado por abimaelrc Ver Mensaje
Ahhh claro, se pierde seguro que sí. Pero entiendo que pasaría lo mismo si se redimensiona. Aunque he hecho varias pruebas con el código que brindé que no he visto mucha perdida o no se nota la perdida, digo es lo que he notado hasta ahora.


El problema ya no sería de la conexión mayormente, sino al bandwidth que algunos hosting imponen.

Solo fue una observación, por si miriamgomez no lo tenía pensando
Nop, en realidad no pasa lo mismo al redimensionar una imagen que al quitarle proporcion...
al quitarle proporcion naturalmente le quitas DPI a las imagenes, es por eso que por ejemplo cuando una imagen es pequeña y la escalas a mas grande se pixelea, en cambio si una imagen solo se redimensiona esta mantiene su proporcion...
Tal vez para nuestros ojos no se vea la perdida de resolucion, pero creeme que para un experto en diseño eso no se le escapa...
asi fue que aprendi lo que te digo, jajaja, por que amis jefes de diseño no se les escapa ni 1 misero pixel...

y con respecto a lo del ancho de banda (bandwith) pues cualquier host da suficiente ancho de banda para poder cargar imagenes con maginitudes grandes de resolucion...
pero bueno. vuelvo a lo mismo, cualquier aporte es bueno y las ideas son respetadas =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #8 (permalink)  
Antiguo 13/06/2011, 16:29
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Código PHP:
Ver original
  1. <?php
  2. //mostramos todos nuestros
  3. //artículos, viendo si han
  4. //sido agregados o no a nuestro
  5. //carro de compra
  6. //y hacemos la consulta
  7.  
  8. $registros = 6;
  9. $SrcImg = ''; //agregue esta variable que es donde asignaremos la ruta de la imagen =D
  10. $ScaleImg = ''; //esta variable obtendra el nuevo ancho y alto de tu imagen...
  11. if(!$_GET['pagina']){
  12. $inicio = 0;
  13. $_GET['pagina'] = 1;
  14. }else{
  15. $inicio = ($_GET['pagina'] - 1) * $registros;
  16. }
  17.  
  18. $resultados = mysql_query("SELECT * FROM directorio where categoria='$categoria'order by id asc");
  19. $total_registros = mysql_num_rows($resultados);
  20. $resultados = mysql_query("SELECT * FROM directorio where categoria='$categoria'order by id asc LIMIT $inicio, $registros");
  21. $total_paginas = ceil($total_registros / $registros);
  22.  
  23. $qry=$resultados;
  24.  
  25. while($row=mysql_fetch_assoc($qry)){
  26. $SrcImg = '../'.$row['url']; //Aquí asignamos la ruta de la imagen que obtuvimos de la Base de Datos =D
  27.                        //como esta dentro del while cada vez que se recorra un resultado se le asigna a $SrcImg =P
  28.                      
  29. $ImgSize = getimagesize($SrcImg); /* $ImgSize es la variable que recibirá el alto y el ancho original de la
  30. imagen, como te daras cuenta a la funcion de PHP getimagesize le pasamos como parametro la ruta de la imagen obtenida de la BD.
  31. una vez hecho esto ya podemos usar la funcion que te mostre...
  32. $ImgSize[0] <--- esto representa el ancho de la imagen original
  33. $ImgSize[1] <--- esto representa el alto de la imagen origina */
  34.  
  35. //$ScaleImg obtiene el nuevo alto y ancho proporcional a 200px
  36. $ScaleImg = imageResize($ImgSize[0], $ImgSize[1], 200, 125, true); /* el 200 es el ancho de tu contenedor, osea tu celda 200px
  37. y el alto es 125, tu imagen se ajustara
  38. proporcionalmente... pruebalo y veras =D */
  39.  
  40.  
  41. // Esta funcion es la que se encarga de redimensionar la imagen, solo recibe 5 parametros, en este caso
  42. //el ancho y alto de la imagen original, el ancho y alto del contenedor y un boleano para darle una segund pasada =D
  43. function imageResize($width, $height, $_MaxWidth, $_MaxHeight, $OtherPass) {
  44.         if ($width > $height) {
  45.             $percentage = ($_MaxWidth / $width);
  46.         } else {
  47.             $percentage = ($_MaxHeight / $height);
  48.         }
  49.             $width = round($width * $percentage);
  50.             $height = round(($height * $percentage));
  51.             if($width > $_MaxWidth){
  52.                 $TempWidth = ($width - $_MaxWidth);
  53.                 $width = ($width - $TempWidth);
  54.                 $height = ($height - $TempWidth);
  55.             }
  56.             if($height > $_MaxHeight){
  57.                 $TempHeight = ($height - $_MaxHeight);
  58.                 $height = ($height - $TempHeight);
  59.                 $width = ($width - $TempHeight);
  60.             }
  61.             if($OtherPass){
  62.                 imageResize($width, $height, $_MaxWidth, $_MaxHeight, false);
  63.             }
  64.             return "width=\"$width\" height=\"$height\"";
  65. }
  66. ?>
  67. <img src="http://www.forosdelweb.com/f18/objetos/pintando.png">
  68. <div id="tabla">
  69. <div id="tontasup">
  70. </div>
  71. <div id="tontacen">
  72. <table width="580" border="3">
  73. <tr>
  74. <!-- Aqui solo imprimomos la ruta de tu imagen y el valor que obtuvo $ScaleImg, de esta manera tus imagenes se ajustan al contenedor  -->
  75.  
  76. <td rowspan="2" width="200px" height="125px"><img <?php echo 'src="'.$SrcImg.'" '.$ScaleImg; ?>  align="top" ></td>
  77.  
  78.  
  79. <!------------------------------------------------------------------------------------>
  80.  
  81. <td><div align="center">
  82. <h1><?php echo $row['titulo'] ?></h1>
  83. </div></td>
  84. <td width="100"><div align="center"><?php echo $row['codigo'] ?></div></td>
  85. </tr>
  86. <tr>
  87. <td><div align="center"><font size="+1">Dimensiones: <?php echo $row['dimensiones'] ?></font></div></td>
  88. <td width="150"><div align="center"><font color= #FF0000>Precio:
  89. <?php echo $row['precio'] ?>€</font></div></td>
  90. </tr>
  91. </table>
  92.  
  93.  
  94. </div>
  95. <div id="tontainf">
  96. </div>
  97. <br>
  98.  
  99. </div>
  100.  
  101. <br><br>
  102. <?php }
  103. if($_GET['pagina'] > 1) {
  104. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=1'><< Primera</a> ";
  105. }
  106. if($_GET['pagina'] > 2) {
  107. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".($_GET['pagina']-1)."'>< Anterior</a> ";
  108. }
  109.  
  110. for($i=($_GET['pagina']-2); $i <= ($_GET['pagina']+2); $i++){
  111. if(($i > 0) && ($i <= $total_paginas)){
  112. if($_GET['pagina'] == $i){
  113. echo "<b>".$i."</b> ";
  114. }else{
  115. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=$i'>$i</a> ";
  116. }
  117. }
  118. }
  119.  
  120. if($_GET['pagina'] < ($total_paginas-1)){
  121. echo " <a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".($_GET['pagina']+1)."'>Siguiente ></a>";
  122. }
  123. if($_GET['pagina'] < $total_paginas){
  124. echo " <a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".$total_paginas."'>Últ ima >></a>";
  125. }
  126. ?>
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #9 (permalink)  
Antiguo 13/06/2011, 16:32
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

=D espero que sea lo que buscabas amiga Miriam... cuidate mucho =D
y claro que siempre es un buen dia... sientete bien por eso =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #10 (permalink)  
Antiguo 13/06/2011, 16:52
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: Fijar tamaño Celda/foto

me gustaron las soluciones brindadas por ambos viendo cada posibilidad (redimensionarla al subirla o redimonsionarla al mostrar)

solo me gustaría decir que eviten el repost XD

+karma
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #11 (permalink)  
Antiguo 13/06/2011, 17:05
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años, 6 meses
Puntos: 1517
Respuesta: Fijar tamaño Celda/foto

Cita:
Iniciado por stramin Ver Mensaje
solo me gustaría decir que eviten el repost XD
Me perdí esta parte
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #12 (permalink)  
Antiguo 13/06/2011, 17:07
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: Fijar tamaño Celda/foto

lamentablemente XD

ok, ok, ok, hable en plural para que no sonara tan personal, pero me refería a hugo_euan que publicó 3 veces seguidas XD

aún así sus respuestas estuvieron bien :)

ahora que lo pienso, no se llama repost, no se como se llama.... posts dobles?
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #13 (permalink)  
Antiguo 13/06/2011, 17:14
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

jajajaja, lo siento...
no se como se llame , pero tratare de no hacerlo =P
jajjaaja....
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #14 (permalink)  
Antiguo 13/06/2011, 19:25
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: Fijar tamaño Celda/foto

Hola

Gracias por vuestras aportaciones, especialmente a Hugo_Euan, que eres un angel protector.


Supongo que hice algo mal, por que dio esto:


Fatal error: Call to undefined function imageResize() in /var/www/vhosts/xn--sealizacionescampodegibraltar-60c.com/httpdocs/senalizaciones/automovil.php on line 94

Esta es la linea 94:
$ScaleImg = imageResize($ImgSize[0], $ImgSize[1], 200, 125, true); /* el 200 es el ancho de tu contenedor, osea tu celda 200px


Gracias
  #15 (permalink)  
Antiguo 14/06/2011, 08:52
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

no, nenita, tu no hiciste nada mal, el error fue mio, fijate muy bien en este bloque, puse la funcion dentro del While... es por eso que te marca error...

Código PHP:
Ver original
  1. while($row=mysql_fetch_assoc($qry)){
  2. $SrcImg = '../'.$row['url']; //Aquí asignamos la ruta de la imagen que obtuvimos de la Base de Datos =D
  3.            //como esta dentro del while cada vez que se recorra un resultado se le asigna a $SrcImg =P
  4.            
  5. $ImgSize = getimagesize($SrcImg); /* $ImgSize es la variable que recibirá el alto y el ancho original de la
  6. imagen, como te daras cuenta a la funcion de PHP getimagesize le pasamos como parametro la ruta de la imagen obtenida de la BD.
  7. una vez hecho esto ya podemos usar la funcion que te mostre...
  8. $ImgSize[0] <--- esto representa el ancho de la imagen original
  9. $ImgSize[1] <--- esto representa el alto de la imagen origina */
  10.  
  11. //$ScaleImg obtiene el nuevo alto y ancho proporcional a 200px
  12. $ScaleImg = imageResize($ImgSize[0], $ImgSize[1], 200, 125, true); /* el 200 es el ancho de tu contenedor, osea tu celda 200px
  13. y el alto es 125, tu imagen se ajustara
  14. proporcionalmente... pruebalo y veras =D */
  15.  
  16.  
  17. // Esta funcion es la que se encarga de redimensionar la imagen, solo recibe 5 parametros, en este caso
  18. //el ancho y alto de la imagen original, el ancho y alto del contenedor y un boleano para darle una segund pasada =D
  19. function imageResize($width, $height, $_MaxWidth, $_MaxHeight, $OtherPass) {
  20.     if ($width > $height) {
  21.       $percentage = ($_MaxWidth / $width);
  22.     } else {
  23.       $percentage = ($_MaxHeight / $height);
  24.     }
  25.       $width = round($width * $percentage);
  26.       $height = round(($height * $percentage));
  27.       if($width > $_MaxWidth){
  28.         $TempWidth = ($width - $_MaxWidth);
  29.         $width = ($width - $TempWidth);
  30.         $height = ($height - $TempWidth);
  31.       }
  32.       if($height > $_MaxHeight){
  33.         $TempHeight = ($height - $_MaxHeight);
  34.         $height = ($height - $TempHeight);
  35.         $width = ($width - $TempHeight);
  36.       }
  37.       if($OtherPass){
  38.         imageResize($width, $height, $_MaxWidth, $_MaxHeight, false);
  39.       }
  40.       return "width=\"$width\" height=\"$height\"";
  41. }

La funcion imageResize debe estar fuera del while... así =D

Código PHP:
Ver original
  1. <?php
  2. //mostramos todos nuestros
  3. //artículos, viendo si han
  4. //sido agregados o no a nuestro
  5. //carro de compra
  6. //y hacemos la consulta
  7.  
  8. $registros = 6;
  9. $SrcImg = ''; //agregue esta variable que es donde asignaremos la ruta de la imagen =D
  10. $ScaleImg = ''; //esta variable obtendra el nuevo ancho y alto de tu imagen...
  11. if(!$_GET['pagina']){
  12. $inicio = 0;
  13. $_GET['pagina'] = 1;
  14. }else{
  15. $inicio = ($_GET['pagina'] - 1) * $registros;
  16. }
  17.  
  18.  
  19. // Esta funcion es la que se encarga de redimensionar la imagen, solo recibe 5 parametros, en este caso
  20. //el ancho y alto de la imagen original, el ancho y alto del contenedor y un boleano para darle una segund pasada =D
  21.  
  22. function imageResize($width, $height, $_MaxWidth, $_MaxHeight, $OtherPass) {
  23.     if ($width > $height) {
  24.       $percentage = ($_MaxWidth / $width);
  25.     } else {
  26.       $percentage = ($_MaxHeight / $height);
  27.     }
  28.       $width = round($width * $percentage);
  29.       $height = round(($height * $percentage));
  30.       if($width > $_MaxWidth){
  31.         $TempWidth = ($width - $_MaxWidth);
  32.         $width = ($width - $TempWidth);
  33.         $height = ($height - $TempWidth);
  34.       }
  35.       if($height > $_MaxHeight){
  36.         $TempHeight = ($height - $_MaxHeight);
  37.         $height = ($height - $TempHeight);
  38.         $width = ($width - $TempHeight);
  39.       }
  40.       if($OtherPass){
  41.         imageResize($width, $height, $_MaxWidth, $_MaxHeight, false);
  42.       }
  43.       return "width=\"$width\" height=\"$height\"";
  44. }
  45.  
  46. $resultados = mysql_query("SELECT * FROM directorio where categoria='$categoria'order by id asc");
  47. $total_registros = mysql_num_rows($resultados);
  48. $resultados = mysql_query("SELECT * FROM directorio where categoria='$categoria'order by id asc LIMIT $inicio, $registros");
  49. $total_paginas = ceil($total_registros / $registros);
  50.  
  51. $qry=$resultados;
  52.  
  53. while($row=mysql_fetch_assoc($qry)){
  54. $SrcImg = '../'.$row['url']; //Aquí asignamos la ruta de la imagen que obtuvimos de la Base de Datos =D
  55.            //como esta dentro del while cada vez que se recorra un resultado se le asigna a $SrcImg =P
  56.            
  57. $ImgSize = getimagesize($SrcImg); /* $ImgSize es la variable que recibirá el alto y el ancho original de la
  58. imagen, como te daras cuenta a la funcion de PHP getimagesize le pasamos como parametro la ruta de la imagen obtenida de la BD.
  59. una vez hecho esto ya podemos usar la funcion que te mostre...
  60. $ImgSize[0] <--- esto representa el ancho de la imagen original
  61. $ImgSize[1] <--- esto representa el alto de la imagen origina */
  62.  
  63. //$ScaleImg obtiene el nuevo alto y ancho proporcional a 200px
  64. $ScaleImg = imageResize($ImgSize[0], $ImgSize[1], 200, 125, true); /* el 200 es el ancho de tu contenedor, osea tu celda 200px
  65. y el alto es 125, tu imagen se ajustara
  66. proporcionalmente... pruebalo y veras =D */
  67.  
  68. ?>
  69. <img src="http://www.forosdelweb.com/f18/objetos/pintando.png">
  70. <div id="tabla">
  71. <div id="tontasup">
  72. </div>
  73. <div id="tontacen">
  74. <table width="580" border="3">
  75. <tr>
  76. <!-- Aqui solo imprimomos la ruta de tu imagen y el valor que obtuvo $ScaleImg, de esta manera tus imagenes se ajustan al contenedor -->
  77.  
  78. <td rowspan="2" width="200px" height="125px"><img <?php echo 'src="'.$SrcImg.'" '.$ScaleImg; ?> align="top" ></td>
  79.  
  80.  
  81. <!------------------------------------------------------------------------------------>
  82.  
  83. <td><div align="center">
  84. <h1><?php echo $row['titulo'] ?></h1>
  85. </div></td>
  86. <td width="100"><div align="center"><?php echo $row['codigo'] ?></div></td>
  87. </tr>
  88. <tr>
  89. <td><div align="center"><font size="+1">Dimensiones: <?php echo $row['dimensiones'] ?></font></div></td>
  90. <td width="150"><div align="center"><font color= #FF0000>Precio:
  91. <?php echo $row['precio'] ?>€</font></div></td>
  92. </tr>
  93. </table>
  94.  
  95.  
  96. </div>
  97. <div id="tontainf">
  98. </div>
  99. <br>
  100.  
  101. </div>
  102.  
  103. <br><br>
  104. <?php }
  105. if($_GET['pagina'] > 1) {
  106. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=1'><< Primera</a> ";
  107. }
  108. if($_GET['pagina'] > 2) {
  109. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".($_GET['pagina']-1)."'>< Anterior</a> ";
  110. }
  111.  
  112. for($i=($_GET['pagina']-2); $i <= ($_GET['pagina']+2); $i++){
  113. if(($i > 0) && ($i <= $total_paginas)){
  114. if($_GET['pagina'] == $i){
  115. echo "<b>".$i."</b> ";
  116. }else{
  117. echo "<a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=$i'>$i</a> ";
  118. }
  119. }
  120. }
  121.  
  122. if($_GET['pagina'] < ($total_paginas-1)){
  123. echo " <a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".($_GET['pagina']+1)."'>Siguiente ></a>";
  124. }
  125. if($_GET['pagina'] < $total_paginas){
  126. echo " <a href='http://www.señalizacionescampodegibraltar.com/senalizaciones/".$pagina.".php?pagina=".$total_paginas."'>Últ ima >></a>";
  127. }
  128. ?>

ahora pruebalo y me dices que tal =P
y gracias por lo de angelito =P
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!

Última edición por Hugo_Euan; 14/06/2011 a las 09:00
  #16 (permalink)  
Antiguo 14/06/2011, 09:09
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: Fijar tamaño Celda/foto

Hola casi perfecto¡¡¡¡¡

Pero me salen dos imagenes, una bien, pero arriba me sale un cuadaradito con un aspa ( como si no exisitiera la imagen)


Un saludo
  #17 (permalink)  
Antiguo 14/06/2011, 09:13
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Cita:
Iniciado por miriamgomez Ver Mensaje
Hola casi perfecto¡¡¡¡¡

Pero me salen dos imagenes, una bien, pero arriba me sale un cuadaradito con un aspa ( como si no exisitiera la imagen)


Un saludo
Cuando eso sucede, y no carga la imagen es por que la imagen y/o el formato de imagen no son validos...

=D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #18 (permalink)  
Antiguo 14/06/2011, 09:16
Avatar de solhdeck  
Fecha de Ingreso: junio-2011
Mensajes: 87
Antigüedad: 13 años, 6 meses
Puntos: 32
Respuesta: Fijar tamaño Celda/foto

Muchas respuestas, la más básica es que, en html, desde hace tiempo, si marcas solo el ancho te mantiene las proporciones

Código PHP:
echo "<img src=\"$imagen\" width=200 />"
La historia se complica si la imagen mide menos de 200 de ancho y quieres que en ese caso no te la redimensione
  #19 (permalink)  
Antiguo 14/06/2011, 09:17
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Amiga Miriam, le di un vistazo mas a tu codigo y tal vez la razon por la que te sale esa aspa en tu codigo es este fragmento de código que tienes...

<img src="http://www.forosdelweb.com/f18/objetos/pintando.png">

quitaselo a tu documento y ya no te debe salir =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #20 (permalink)  
Antiguo 14/06/2011, 09:21
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Stream perdon por este repost XD... pero era necesario jejej =P

le doy toda la razón a solhdeck en html si tu defines el ancho de una imagen automaticamente el alto es proporcional... y como bien dice, la complicacion viene si la imagen es menor a 200px.. por que lo que hará HTML es aumentar esa imagen a 200px y la altura a proporcion...

lo cual no sucede con el códico que tiene Miriam... =D
la funcion identifica que es mayor al contenedor, el alto o el ancho ??
y efectua operaciones básicas para redimensionar...
si ni el alto ni el ancho es mayor al contenedor la imagen conserva su tamaño original =D
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!
  #21 (permalink)  
Antiguo 14/06/2011, 10:29
 
Fecha de Ingreso: abril-2008
Mensajes: 348
Antigüedad: 16 años, 8 meses
Puntos: 1
Respuesta: Fijar tamaño Celda/foto

Gracias a todos, ya funciona¡¡¡¡

Pero permitirme agradecerle especialmente a Hugo_Euan por su enorme paciencia conmigo.

Eres el "puto Amo" jajajjajaja

Un saludo
  #22 (permalink)  
Antiguo 14/06/2011, 10:43
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 9 meses
Puntos: 336
Respuesta: Fijar tamaño Celda/foto

Cita:
Iniciado por Hugo_Euan Ver Mensaje
Stream perdon por este repost XD... pero era necesario jejej =P
recuerda que no se llama repost, no sabemos como se llama.

El método de elegir el ancho no evitará el primer problema, que ocupe espacio innecesario en el servidor y demore en cargar, recuerda eso que fue la razón por la que abimaelrc cambió el código.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #23 (permalink)  
Antiguo 14/06/2011, 10:58
Avatar de Hugo_Euan  
Fecha de Ingreso: abril-2011
Ubicación: Mérida, Yucatán, México
Mensajes: 193
Antigüedad: 13 años, 7 meses
Puntos: 71
Respuesta: Fijar tamaño Celda/foto

Tienes razon Stramin no sabemos como se llama... en fin.. jajaj...

y lo demas pues me perdi...
__________________
Se acepta Karma (:

Si Dios con nosotros, quien contra nosotros !!

Etiquetas: fijar, tamaño
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 15:16.