Ver Mensaje Individual
  #3 (permalink)  
Antiguo 19/05/2006, 10:06
Avatar de 100
100
 
Fecha de Ingreso: mayo-2006
Ubicación: Ferror
Mensajes: 3
Antigüedad: 17 años, 11 meses
Puntos: 0
Pues cosa de las rutas absolutas no era. Pero GRACIAS de todas formas

Le hice caso a tu amigo Cervantes y repasé la documentación sobre la librería GD de PHP
( ..esos libros de caballería, pardiez!! )

y bueno estaba haciendo unas cuantas desbarradas..

Pero bueno ahora quedó bonito y funcionando

Procedo y aki lo chanto corregido y un poco ampliado, en esta gran base de conocimiento para quien le pueda servir ( supongo q podría estar mejor ):


formulario en html para subir imagen :
subirImagenForm.html
Código HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Formulario Subir Imagen</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>

<form action="subirImagen.php" method="POST" enctype="multipart/form-data">

  <p>Imagen: 
    <input type="file" name="imgarchivo">

    <br>
    <br>
    <input type="submit" name="submit" value="submit"> 
</form>

</body>
</html> 

archivo php q recoge/checkea/copia a dir 1/redim/copia a fichero 2/redim a thumbnail :
subirImagen.php

Código PHP:
/*
Script original de NoSetup.tk

Crear 2 carpetas dentro de la ruta de servidor donde se encuentre el archivo de este script
p. ej.: fotosConciertos > para las imagenes y fotosConciertosTN > para las imagenes de previsualización
*/

function copiarRedImagen (){

    
$extensiones = array('.jpg','.jpeg','.gif','.png');
    
$anchura_max 1600;
    
$altura_max 1200;
    
$tamano_max=1024000;

    
$imgarchivo $_FILES['imgarchivo']['name'];
    
$imgarchivo strtolower$imgarchivo );
    
$temporal $_FILES['imgarchivo']['tmp_name'];
    
$fichero_ruta"fotosConciertos/" $imgarchivo;
    
$fichero_ruta_thumb"fotosConciertosTN/tn_" $imgarchivo;
    
    if (!
is_uploaded_file ($temporal)){
     
        
error ("<p>No ha seleccionado el archivo</p>");

    }    
    
    if ( 
file_exists ($fichero_ruta) ){
        
        
error ("<p>La imagen ya existe</p>");

    };
    
    
move_uploaded_file($temporal,$fichero_ruta);
    
$datos getimagesize ($fichero_ruta);
    
$ext strrchr($fichero_ruta,".");
    
$ext_correcta="no";

    foreach (
$extensiones as $extension){
        
        if (
$ext == $extension){
            
            
$ext_correcta="si";
        
        }
    }
    
    if (
$ext_correcta=="no"){
        
        
unlink ($fichero_ruta);
        
error ("<p>Tipo de archivo de imagen no válido [ válidos : gif, png, jpg o jpeg ]</p>");
        
    }
    
    
$tamano=filesize($fichero_ruta);
        
    if (
$tamano>$tamano_max){
        
        
unlink ($fichero_ruta);
        
error ("<p>Imagen demasiado pesada</p>");
            
    }
        
    if ((
$anchura_max!=0) && ($datos[0]>$anchura_max)){
        
        
unlink ($fichero_ruta);
        
error ("<p>Anchura de la imagen demasiado grande</p>");
        
    }

    if ( 
$datos[2]==){
        
        if (
function_exists("imagecreatefromgif")){
                
            
$img imagecreatefromgif($fichero_ruta);

                
        } else {
            
            
unlink ($fichero_ruta);
            
error ("<p>Función [ imagecreatefromgif ] no es soportada por el servidor</p>");

        }
    }
            
    if (
$datos[2]==2){
            
        if (
function_exists("imagecreatefromjpeg")){
                    
            
$img imagecreatefromjpeg($fichero_ruta);
        
        } else {
        
            
unlink ($fichero_ruta);
            
error ("<p>Función [ imagecreatefromjpeg ] no es soportada por el servidor</p>");
        
        }
    }
    
    if (
$datos[2]==3){
        
        if (
function_exists("imagecreatefrompng")){
        
            
$img imagecreatefrompng($fichero_ruta);

        
        } else {
            
            
unlink ($fichero_ruta);
            
error ("<p>Función [ imagecreatefrompng ] no es soportada por el servidor</p>");
                    
        }
            
    }
    
    
$ancho_orig $datos[0];
    
$alto_orig $datos[1];
        
    if (
$ancho_orig $alto_orig){
        
        
$ancho_dest 600;
        
$alto_dest = ($ancho_dest/$ancho_orig)*$alto_orig;
        
    }else{
        
        
$alto_dest 450;
        
$ancho_dest = ($alto_dest/$alto_orig)*$ancho_orig;
        
    }
    
    
$img2 = @imagecreatetruecolor($ancho_dest,$alto_dest) or $img2=imagecreate($ancho_dest,$alto_dest);
    @
imagecopyresampled($img2,$img,0,0,0,0,$ancho_dest,$alto_dest,$ancho_orig,$alto_orig) or imagecopyresized($img2,$img,0,0,0,0,$ancho_dest,$alto_dest,$ancho_orig,$alto_orig);
    
imagejpeg($img2$fichero_ruta);
    
$datos getimagesize ($fichero_ruta);
    
$img imagecreatefromjpeg($fichero_ruta);
    
    
$ancho_orig $datos[0];
    
$alto_orig $datos[1];
        
    if (
$ancho_orig $alto_orig){
        
        
$ancho_dest 100;
        
$alto_dest = ($ancho_dest/$ancho_orig)*$alto_orig;
        
    }else{
        
        
$alto_dest 75;
        
$ancho_dest = ($alto_dest/$alto_orig)*$ancho_orig;
        
    }
    
    
$img2 = @imagecreatetruecolor($ancho_dest,$alto_dest) or $img2=imagecreate($ancho_dest,$alto_dest);
    @
imagecopyresampled($img2,$img,0,0,0,0,$ancho_dest,$alto_dest,$ancho_orig,$alto_orig) or imagecopyresized($img2,$img,0,0,0,0,$ancho_dest,$alto_dest,$ancho_orig,$alto_orig);
    
imagejpeg($img2$fichero_ruta_thumb);
    
    
clearstatcache();

    echo 
"<img src=\"$fichero_ruta\" alt=\"$fichero_ruta\" /><br />\n";
    echo 
"<br>";
    echo 
"<img src=\"$fichero_ruta_thumb\" alt=\"$fichero_ruta_thumb\" /><br />\n";
    
}

function 
error($mensaje){
    
    echo 
"<!DOCTYPE html PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\">\n";
    echo 
"<html>\n";
    echo 
"<head>\n";
    echo 
"<meta http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\" />\n";
    echo 
"<title>Subir-Copiar-Redimensionar imagen y crear una imagen de previsualización. Script a partir del original de NoSetup.tk</title>\n";
    echo 
"</head>\n";
    echo 
"<body>\n";
    echo 
$mensaje;
    echo 
"</body>\n";
    echo 
"</html>\n";
    die();
}

if (
$_POST['submit']){
    

    
copiarRedImagen ();

    
    
}else{
    
    
error ("<p>No ha llegado ninguna imagen desde el formulario</p>");
    
}; 

y eso fué todo

!!