Foros del Web » Programando para Internet » PHP »

No entiendo mucho del thubnail!

Estas en el tema de No entiendo mucho del thubnail! en el foro de PHP en Foros del Web. Hola amigos la verdad no entiendo algo muy bien acerca de crear thubnails, y pues la verdad me a costado trabajo: tengo este codigo: @import ...
  #1 (permalink)  
Antiguo 14/04/2011, 06:25
 
Fecha de Ingreso: febrero-2011
Ubicación: cali, valle del cauca
Mensajes: 158
Antigüedad: 13 años, 2 meses
Puntos: 8
No entiendo mucho del thubnail!

Hola amigos la verdad no entiendo algo muy bien acerca de crear thubnails, y pues la verdad me a costado trabajo:

tengo este codigo:
Código PHP:
Ver original
  1. <?php
  2. // Configuracion de la altura y ancho maximo de la imagen
  3. $anchura=100;
  4. $hmax=100;
  5.  
  6. // Parametro a enviar - es decir origen de la imagen  
  7. $nombre=$_POST['archivo'];
  8. echo $nombre;
  9.  
  10.  
  11. // Tomando informacion de la imagene, esta funcion envia los datos a un array
  12. $datos = getimagesize($nombre);  
  13.  
  14.  
  15. if($datos[2]==1){$img = @imagecreatefromgif($nombre);}  // si es un Gif
  16.  
  17. if($datos[2]==2){$img = @imagecreatefromjpeg($nombre);} // si es un jpg
  18.  
  19. if($datos[2]==3){$img = @imagecreatefrompng($nombre);} //  si es un png
  20.  
  21.  
  22. /*
  23.  aqui empieza lo bueno  
  24.  como bien sabemos no podemos redimensionar una imagen vertical de la misma forma que una horizontal
  25.  bueno esta parte del script no ayuda a poder hacerlo lo que realiza es dividir el ancho original entre
  26.  el ancho maximo y luego divide la altura original entre el resultado anterior
  27.  bueno esto es para el ancho
  28. */
  29.  
  30. $ratio = ($datos[0] / $anchura);
  31. $altura = ($datos[1] / $ratio);
  32.  
  33.  
  34.  
  35. /*
  36.  Para el Alto
  37.  sera esto primero pregunta si el alto es mayor que el alto maximo que hemos definido
  38.  esto solo significa que es una imagen vertical claro si la condicion nos da true
  39.  lo que aremos sera multiplicar la altura maxima por la anchura que hemos definido
  40.  y la dividimos entre la altura esto nos dara una imagen vertical apropiada para
  41.  nuestra muestra
  42. */
  43.  
  44.  
  45. if($altura>$hmax){
  46.  
  47.    $anchura2 = $hmax*$anchura/$altura;
  48.    $altura = $hmax;
  49.    $anchura = $anchura2;
  50. }
  51.  
  52.  
  53.  
  54. $thumb = imagecreatetruecolor($anchura,$altura); // se crea una imagen en blanco
  55.  
  56.  
  57. // Procedemos a remplazar la imagen antigua por la nueva
  58. imagecopyresampled($thumb, $img, 0, 0, 0, 0, $anchura, $altura, $datos[0], $datos[1]);
  59.  
  60.  
  61. // Preguntamos el tipo de imagen para saber que cabezera enviar
  62. if($datos[2]==1){header("Content-type: image/gif"); imagegif($thumb);}
  63. if($datos[2]==2){header("Content-type: image/jpeg");imagejpeg($thumb);}
  64. if($datos[2]==3){header("Content-type: image/png");imagepng($thumb); }
  65.  
  66.  
  67. // Destruimos la imagen temporal para no recargar el servidor
  68. imagedestroy($thumb);
  69.  
  70. // Listo ya tenemos nuestro redimensionador listo  
  71. ?>


Y pues Obvio tiene que tener un html que lo e hecho asi de esta manera:
Código HTML:
Ver original
  1. <form action="update01.php" method="post" enctype="multipart/form-data">
  2.     <td height="33" class="text">
  3.       <input name="archivo" type="file" class="casilla" id="archivo" size="35" />
  4.       <input name="enviar" type="submit" class="boton" id="enviar" value="Actualizar" />
  5.       <input name="action" type="hidden" value="upload" />
  6.       <label>
  7.       <input name="Imagen" type="hidden" id="Imagen" value="<? echo "$cod"; ?>">
  8.       </label></td>
  9.      
  10.     </form>


Subo la imagen al servidor pero no me genera nada el thubnail o que estoy haciendo mal?
Código PHP:
Ver original
  1. <?php
  2. $status = "";
  3. if ($_POST["action"] == "upload") {
  4.     // obtenemos los datos del archivo
  5.     $tamano = $_FILES["archivo"]['size'];
  6.     $tipo = $_FILES["archivo"]['type'];
  7.     $archivo = $_FILES["archivo"]['name'];
  8.     $prefijo = substr(md5(uniqid(rand())),0,6);
  9.    
  10.     if ($archivo != "") {
  11.         // guardamos el archivo a la carpeta files
  12.         $destino =  "files/".$prefijo."".$archivo;
  13.         if (copy($_FILES['archivo']['tmp_name'],$destino)) {
  14.             $status = "Archivo subido: <b>".$archivo."</b>";
  15.         } else {
  16.             $status = "Error al subir el archivo";
  17.         }
  18.     } else {
  19.         $status = "Error al subir archivo";
  20.     }
  21. }
  22. echo '<input type="text" name="archivo" value="'.$archivo.'">';
  23. ?>


Gracias a los que me puedan ayudar

Etiquetas: Ninguno
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 00:49.