Foros del Web » Programando para Internet » PHP »

Imagenes con PHP

Estas en el tema de Imagenes con PHP en el foro de PHP en Foros del Web. Necesito Ayuda con PHP porque he leido que ya han publicaco como colocar una imagen dinámica con PHP desde una base de datos pero el ...
  #1 (permalink)  
Antiguo 17/02/2010, 08:46
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Información Imagenes con PHP

Necesito Ayuda con PHP porque he leido que ya han publicaco como colocar una imagen dinámica con PHP desde una base de datos pero el ejemplo que tienen allí no me ha ayudado será que alguién me puede ayudar.


Gracias de ante mano.
  #2 (permalink)  
Antiguo 17/02/2010, 08:47
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: Imagenes con PHP

cual es tu problema???
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #3 (permalink)  
Antiguo 17/02/2010, 08:50
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

hermano cuando cargo la imagen y la paso a la base de datos, se monta pero cuando intento tomarla y mostrar en otro documento o pantalla con PHP no se muestra y según lo que estaba leyendo es que necesito activar unas librerías como se hace eso soy nuevo en el mundo de PHP
  #4 (permalink)  
Antiguo 17/02/2010, 08:52
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

¿Cómo intentas mostrar la imagen? Lo que puedes hacer es tener una página que de acuerdo a un parámetro tome la imagen de la base de datos y devuelva su contenido con la cabecera HTTP correspondiente que indique el tipo de imagen.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 17/02/2010, 09:02
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

ok la sustitución es que la dirección de la imagen se actualiza en la base de datos pero cuando la voy a mostrar aparentemente pareciera que requiere de un dll de windows, podrias ayudarme
  #6 (permalink)  
Antiguo 17/02/2010, 09:03
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Pregunta Respuesta: Imagenes con PHP

las librerias gd2 ???, debes activarlas ingresando a tu php.ini, busca una linea similar a esta:

Código PHP:
;extension=php_gd2.dll 
si esta con ; significa que esta desativada, debes activarla quitando el ;

Código PHP:
extension=php_gd2.dll 
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #7 (permalink)  
Antiguo 17/02/2010, 09:06
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

Gracias Hector voy a probar y te escribo el resultado
  #8 (permalink)  
Antiguo 17/02/2010, 09:07
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

¿Cuál es el código que intentas usar para mostrar la imagen? ¿En la base de datos tienes guardada la dirección de la imagen o la imagen en sí en un campo BLOB?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #9 (permalink)  
Antiguo 17/02/2010, 09:21
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

ya te monto el código
  #10 (permalink)  
Antiguo 17/02/2010, 09:22
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

Código HTML:
Ver original
  1. <?php
  2.  
  3. include 'conexion.php';
  4. $vartexto = $_POST["campotexto"];
  5. $c1       = $_POST["casilla1"];
  6. $c2       = $_POST["casilla2"];
  7. $c3       = $_POST["casilla3"];
  8. $c4       = $_POST["casilla4"];
  9. $id       = $_POST["oculto"];
  10.  
  11. $imagen =$_FILES['imagen1']['name'];
  12.  
  13. // Actualiza la imagen
  14. if ( $imagen != "" )
  15.  {
  16.    $extensiones=array("html","exe","php","txt");
  17.    $path="./upload";
  18.    $nombre = $_FILES['imagen1']['name'];
  19.    $tamanio= $_FILES['imagen1']['size'];
  20.    $tipo   = $_FILES['imagen1']['type'];
  21.    $var    =explode(".","$nombre");
  22.    $num = count($extensiones);
  23.    $valor = $num-1;
  24.    for($i=0; $i<=$valor; $i++) {
  25.        if($extensiones[$i] == $var[1]) {
  26.          echo "Tipo de Archivo no admitido";
  27.              exit;
  28.        }
  29.      }
  30.         // Borra la imagen anterior
  31.        $delimagen  = mysql_query("select * from abogados_mybd.prueba WHERE id = $id ", $conexion);
  32.        if ($row= mysql_fetch_array($delimagen))
  33.       {
  34.       $archivo   = $row["imagen"];
  35.       @unlink($archivo);
  36.       }
  37.    
  38.       move_uploaded_file( $_FILES['imagen1']['tmp_name'], "$path/$nombre" );
  39.       @unlink($_FILES['imagen1']['tmp_name']);
  40.        $sql1 = "UPDATE abogados_mybd.prueba SET imagen = '$path/$nombre'  WHERE id = $id ";
  41.        $result1    = mysql_query($sql1);  
  42.  }
  43.   else   
  44.  {
  45.  $path   = "";
  46.  $nombre = "";
  47.  }
  #11 (permalink)  
Antiguo 17/02/2010, 09:23
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

Y esta controla la imagen:

Código HTML:
Ver original
  1. <?php
  2.  
  3. $anchura=110;
  4.  
  5. $hmax=110;
  6.  
  7. $nombre=basename($_GET['imagen']);
  8.  
  9. $datos = getimagesize($nombre);
  10.  
  11. if($datos[2]==1){$img = @imagecreatefromgif($nombre);}
  12.  
  13. if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);}
  14.  
  15. if($datos[2]==3){$img = @imagecreatefrompng($nombre);}
  16.  
  17. $ratio = ($datos[0] / $anchura);
  18.  
  19. $altura = ($datos[1] / $ratio);
  20.  
  21. if($altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;}
  22.  
  23. $thumb = imagecreatetruecolor($anchura,$altura);
  24.  
  25. imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
  26.  
  27. if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
  28.  
  29. if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
  30.  
  31. if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
  32.  
  33. imagedestroy($thumb);
  34.  
  35. ?>
  #12 (permalink)  
Antiguo 17/02/2010, 09:25
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

Ya veo, sólo guardas la ruta del archivo en la base de datos.

A la hora de mostrar la imagen deberías imprimir en una etiqueta <img /> la ruta de la imagen obtenida de la base de datos ¿cómo tienes esa parte del código?
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #13 (permalink)  
Antiguo 17/02/2010, 09:31
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
<img src='./upload/redim.php?imagen=<? echo $vlogo; ?>' border="0" />

La tengo así Hermano en otro documento metido en un cuadro de html para mostrar la imagen de una manera ordenada
Código HTML:
Ver original
  1. <img src='./upload/redim.php?imagen=<? echo $vlogo; ?>' border="0" />

Última edición por GatorV; 17/02/2010 a las 10:08
  #14 (permalink)  
Antiguo 17/02/2010, 09:35
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

¿Qué valor tienes en la variable $vlogo? ¿Has comprobado que sea un nombre de archivo válido? Quita esos @ y los header() (para que muestre los errores) y accede directamente a la URL (upload/redim.php?imagen=nombreimagen) para ver qué te devuelve.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #15 (permalink)  
Antiguo 17/02/2010, 09:43
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

En la variable la imagen,

y estos son los errores que me da.


Código HTML:
Ver original
  1. Warning: Division by zero in C:\wamp\www\Script-PHPOriginal\upload\redim.php  on line 19
  2.  
  3. Fatal error: Call to undefined function imagecreatetruecolor() in C:\wamp\www\Script-PHPOriginal\upload\redim.php on line 23
  #16 (permalink)  
Antiguo 17/02/2010, 09:49
Avatar de hector2c  
Fecha de Ingreso: noviembre-2007
Ubicación: Perú - Tacna
Mensajes: 979
Antigüedad: 16 años, 4 meses
Puntos: 25
Respuesta: Imagenes con PHP

¬¬, deberias mostrar esas linea, la 19 y la 23.... mmmm, estas subiendo imagenes tomadas de las cámaras digitales??? intenta subiendo una imagen sencilla como esta
__________________
blog: hector2c.wordpress.com
email: [email protected]
  #17 (permalink)  
Antiguo 17/02/2010, 09:52
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

Al parecer realmente el problema es que o no tienes instalado GD o no tienes la versión correcta.

Coloca en una página en blanco phpinfo y revisa si GD está entre las extensiones cargadas.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #18 (permalink)  
Antiguo 17/02/2010, 10:09
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

Estoy Intentan montar imágenes sencillas.

Ya te mando las Líneas correspondientes.
  #19 (permalink)  
Antiguo 17/02/2010, 10:10
Avatar de SalomonHe  
Fecha de Ingreso: febrero-2010
Mensajes: 28
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: Imagenes con PHP

Código HTML:
Ver original
  1. <?php
  2.  
  3. $anchura=110;
  4.  
  5. $hmax=110;
  6.  
  7. $nombre=basename($_GET['imagen']);
  8.  
  9. $datos = getimagesize($nombre);
  10.  
  11. if($datos[2]==1){$img = @imagecreatefromgif($nombre);}
  12.  
  13. if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);}
  14.  
  15. if($datos[2]==3){$img = @imagecreatefrompng($nombre);}
  16.  
  17. $ratio = ($datos[0] / $anchura);
  18.  
  19. $altura = ($datos[1] / $ratio);
  20.  
  21. if($altura>$hmax){$anchura2=$hmax*$anchura/$altura;$altura=$hmax;$anchura=$anchura2;}
  22.  
  23. $thumb = imagecreatetruecolor($anchura,$altura);
  24.  
  25. imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
  26.  
  27. if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
  28.  
  29. if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
  30.  
  31. if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
  32.  
  33. imagedestroy($thumb);
  34.  
  35. ?>
  #20 (permalink)  
Antiguo 17/02/2010, 10:54
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Imagenes con PHP

Es que si la librería GD no está instalada correctamente, de igual forma no va a funcionar. Como te indiqué, coloca esto en una página en blanco:
Código PHP:
Ver original
  1. <?php
Cuando ingreses a la página te mostrará información detallada de tu servidor, entre esa información encontrarás las librerías que están cargadas. Revisa si la librería GD está entre ellas.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.

Etiquetas: imagenes
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 01:17.