Foros del Web » Programando para Internet » PHP »

recuperar imagen desde BD

Estas en el tema de recuperar imagen desde BD en el foro de PHP en Foros del Web. Buen dia Foreros del Web! Voy a necesitar la manito de algun entendido en el tema! Un amigote me encargo una web en php que ...
  #1 (permalink)  
Antiguo 28/04/2011, 09:27
 
Fecha de Ingreso: noviembre-2010
Mensajes: 48
Antigüedad: 14 años, 1 mes
Puntos: 5
recuperar imagen desde BD

Buen dia Foreros del Web! Voy a necesitar la manito de algun entendido en el tema! Un amigote me encargo una web en php que carge imagenes ect. hasta ahi todo bien. El problema viene en el momento de colocarle un buscador. hasta donde pude llegar fue solo hasta recuperar el texto de la BD pero me falta recuperar la imagen y luego darle un formato (para que quede ordenado de la siguiente forma: izq: imagen, medio: descripcion, der: precio).

Antes de que me pidiera el buscador la imagen era recuperada a travez de un script en php (la imagen no e esta guardada en la BD solo esta codificada) que recuperaba el codigo guardado en la BD y la imagen guardada en una carpeta (llamada image) y asi la mostraba.

Aqui les dejo el php de la pagina product.php que es cargada por un index que carga todos los componentes:

Código PHP:
Ver original
  1. <form name="form1" method="post" action="./index.php">
  2.  
  3.   <p>Busqueda rapida  
  4.     <input name="busca" type="text" id="busca" />
  5.     <input type="submit" name="Submit" value="buscar" />
  6.   </p>
  7.   <p>&nbsp; </p>
  8. </form>
  9. <?php // buscador mas listado de aperiencia de productos buscados
  10. $productsPerRow = 1;
  11. $productsPerPage = 10;
  12.  
  13. $children = array_merge(array($catId), getChildCategories(NULL, $catId));
  14. $children = ' (' . implode(', ', $children) . ')';
  15.  
  16. $busca="";
  17. $busca=$_POST['busca'];
  18.  
  19. if($busca!=""){
  20.  
  21. $busqueda=mysql_query("SELECT pd_id, pd_description, pd_thumbnail, pd_qty, c.cat_name, pd_price * sc_shipping_cost AS pd_price
  22.                        FROM tbl_shop_config, tbl_product pd, tbl_category c
  23.                        WHERE pd_description
  24.                         LIKE '%".$busca."%'");
  25.                        
  26. $columnWidth = (int)(100 / $productsPerRow);
  27.  
  28. ?>
  29. <table width="100%" border="0" cellspacing="0" cellpadding="20">
  30. <?php
  31.  
  32. while($pd=@mysql_fetch_array($busqueda)){
  33.     extract($row);
  34.         if ($pd_thumbnail) {
  35.             $pd_thumbnail = WEB_ROOT . 'images/product/' . $pd_thumbnail;
  36.         } else {
  37.             $pd_thumbnail = WEB_ROOT . 'images/no-image-small.png';
  38.         }
  39.  
  40.         echo "<td width=\"$columnWidth=\" align=\"left\"><a><img src=\"$pd_thumbnail\" border=\"0\"></a></td>
  41.               <td width=\"$columnWidth%\" align=\"reight\"><a>Descripcion :  $pd_description</a><td><a> Precio : $pd_price</a>";
  42.              
  43.        
  44.         echo "</td>\r\n";
  45.    
  46.         if ($i % $productsPerRow == $productsPerRow - 1) {
  47.             echo '</tr>';
  48.         }
  49.        
  50.         $i += 1;
  51.     }
  52.    
  53.     if ($i % $productsPerRow > 0) {
  54.         echo '<td colspan="' . ($productsPerRow - ($i % $productsPerRow)) . '">&nbsp;</td>';
  55.     }
  56.    
  57. }
  58. ?>
  59. </table>
  60. <?php // comienso del listado de producto sin accionar el buscador
  61. if (!defined('WEB_ROOT')) {
  62.     exit;
  63. }
  64.  
  65. $productsPerRow = 1;
  66. $productsPerPage = 10;
  67.  
  68. $children = array_merge(array($catId), getChildCategories(NULL, $catId));
  69. $children = ' (' . implode(', ', $children) . ')';
  70.  
  71. $sql = "SELECT pd_id, pd_description, pd_thumbnail, pd_qty, c.cat_name, pd_price * sc_shipping_cost AS pd_price
  72.         FROM tbl_shop_config, tbl_product pd, tbl_category c
  73.         WHERE pd.cat_id = c.cat_id AND pd.cat_id IN $children
  74.         ORDER BY pd_description ASC";
  75. $result     = dbQuery(getPagingQuery($sql, $productsPerPage));
  76. $pagingLink = getPagingLink($sql, $productsPerPage, "c=$catId");
  77. $numProduct = dbNumRows($result);
  78.  
  79.  
  80. $columnWidth = (int)(100 / $productsPerRow);
  81. ?>
  82. <table width="100%" border="0" cellspacing="0" cellpadding="20">
  83. <?php
  84. if ($numProduct > 0 ) {
  85.  
  86.     $i = 0;
  87.     while ($row = dbFetchAssoc($result)) {
  88.    
  89.         extract($row);
  90.         if ($pd_thumbnail) {
  91.             $pd_thumbnail = WEB_ROOT . 'images/product/' . $pd_thumbnail;
  92.         } else {
  93.             $pd_thumbnail = WEB_ROOT . 'images/no-image-small.png';
  94.         }
  95.    
  96.         if ($i % $productsPerRow == 0) {
  97.             echo '<tr>';
  98.         }
  99.  
  100.        
  101.         $pd_price = displayAmount($pd_price);
  102.        
  103.         echo "<td width=\"$columnWidth=\" align=\"left\"><a><img src=\"$pd_thumbnail\" border=\"0\"></a></td>
  104.               <td width=\"$columnWidth%\" align=\"reight\"><a>Descripcion :  $pd_description</a><td><a> Precio : $pd_price</a>";
  105.              
  106.         if ($pd_qty <= 0) {
  107.             echo "<br> Agotado";
  108.         }
  109.        
  110.         echo "</td>\r\n";
  111.    
  112.         if ($i % $productsPerRow == $productsPerRow - 1) {
  113.             echo '</tr>';
  114.         }
  115.        
  116.         $i += 1;
  117.     }
  118.    
  119.     if ($i % $productsPerRow > 0) {
  120.         echo '<td colspan="' . ($productsPerRow - ($i % $productsPerRow)) . '">&nbsp;</td>';
  121.     }
  122.    
  123. } else {
  124. ?>
  125.     <tr><td width="100%" align="center" valign="center">No hay productos en esta categoria</td></tr>
  126. <?php  
  127. }
  128.    
  129. ?>
  130. </table>
  131. <p align="center"><?php echo $pagingLink; ?></p>
  132. <p align="center">&nbsp;</p>

Desde ya muchas gracias y porfi traten de ser claros que mi php no es muy bueno y esto me llevo mucho tiempo de desmenusar, entender y armar! y ya estoy un poco mariada!!

Besitos!!

Última edición por marina_mesas; 28/04/2011 a las 09:46
  #2 (permalink)  
Antiguo 29/04/2011, 06:51
 
Fecha de Ingreso: noviembre-2010
Mensajes: 48
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: recuperar imagen desde BD

Buen dia chicos! Parese que me meti en un buen vaile con esto !! Si necesitan saber algo mas, porfi no duden en preguntar!!
Desde ya gracias y que tengan un lindo dia! !!
  #3 (permalink)  
Antiguo 29/04/2011, 07:32
Avatar de bUllan9ebrio  
Fecha de Ingreso: enero-2011
Ubicación: Chile
Mensajes: 1.128
Antigüedad: 13 años, 10 meses
Puntos: 128
Respuesta: recuperar imagen desde BD

Lo tienes almacenado por ruta alparecer, de ser así deberias recuperar la ruta e imprimirla en un src , porfavor aclara si esta por ruta ó en binario
__________________
Si no vivimos como pensamos, pronto empezaremos a pensar como vivimos.
Más vale un Gracias sincero, que un número que aumente "popularidad" ¬¬°

Universidad de chile, campeón
  #4 (permalink)  
Antiguo 29/04/2011, 08:07
 
Fecha de Ingreso: noviembre-2010
Mensajes: 48
Antigüedad: 14 años, 1 mes
Puntos: 5
Respuesta: recuperar imagen desde BD

Antes que nada gracias por responder!
Es por una ruta. Te cuento como funciona: Por un admin se suben los datos (descripcion ect) y la foto, al subir toda esta informacion la foto se va a una carpeta llamada images/product con el codigo que se otorga a cada foto en este scrpit se recupera en:
Código PHP:
Ver original
  1. WEB_ROOT . 'images/product/'

El script que funciona bien es en el que puse
Código PHP:
Ver original
  1. <?php // comienso del listado de producto sin accionar el buscador

El que esta arriba de este comentario pertenese al buscador que estoy tratando de implementar, copiando un poco lo que esta debajo de este comentario.

No se si respondi tu respuesta, espero que si!!

Etiquetas: bd, recuperar
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 11:15.