Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] copiar imagenes al servidor no funciona

Estas en el tema de copiar imagenes al servidor no funciona en el foro de PHP en Foros del Web. Hola. Tengo este código que estoy haciendo (no esta completo pero va funcionando) y no me funciona la ultima parte donde quiero "copiar y salvar" ...
  #1 (permalink)  
Antiguo 23/05/2013, 03:37
 
Fecha de Ingreso: abril-2011
Mensajes: 99
Antigüedad: 13 años, 7 meses
Puntos: 2
Pregunta copiar imagenes al servidor no funciona

Hola.
Tengo este código que estoy haciendo (no esta completo pero va funcionando) y no me funciona la ultima parte donde quiero "copiar y salvar" la imagen pequeña que he construido al servidor.

La cambio de nombre a partir de la original, de modo que me quede Original: XXXX.JPG y Pequeña redimensionada: XXXXp.jpg

Pues esa pequeña no consigo salvarla al servidor.

Voy sacando echos para ver que va haciendo bien todo... pero donde creo que esta el error es en la linea del comentario: //PASO LA IMAGEN CREADA PEQUEÑA Y LA GRABO EN LA CARPETA DESTINOFINAL


Alguien me puede echar una mano y decirme que estoy haciendo mal o que me falta?? No lo veo.
Muchas gracias

Código PHP:
<?php

if ($_FILES["file"]["error"] > 0)
  {
  echo 
"Error: " $_FILES["file"]["error"] . "<br>";
  }
else
  {
  echo 
"Archivo de subida: " $_FILES["file"]["name"] . "<br>";
  echo 
"Tipo de archivo: " $_FILES["file"]["type"] . "<br>";
  echo 
"Tamaño: " . ($_FILES["file"]["size"] / 1024) . " kB<br>";
  }

$archivo=$_SERVER['DOCUMENT_ROOT']."/test/arriba/".$_FILES["file"]["name"];
echo 
"el archivo es: $archivo<br>";

echo 
"Copiando fichero en destino<br>";
move_uploaded_file($_FILES["file"]["tmp_name"], $archivo);
echo 
"Fichero imagen copiado<br>";


//saco el ancho y alto de la imagen original
list($ancho,$alto)=getimagesize($archivo);

$anchooriginal=$ancho;
echo 
"Ancho original: $anchooriginal<br>";
$altooriginal=$alto;
echo 
"Alto original: $altooriginal<br>";

// a ver que es...
$separo explode'.'strtolower($archivo) );
$nombre $separo[0];
$extension $separo[1];

echo 
"Nombre: $nombre<br>";
echo 
"Extension: $extension<br>";

//mis dimensiones finales
$ancho_final="200";
$alto_final="150";

// creamos una nueva imagen en jpg
$imagen_src imagecreatefromjpeg$archivo );
echo 
"imagen creada de jpg<br>";


//recalcular dimensiones para escalar
//incializo variables y calculo
$escala_1=1;
$escala_2=1;
$escala_1=$ancho_final/$anchooriginal;
$escala_2=alto_final/$altooriginal;

echo 
"Escalas: $escala_1, $escala_2 <br>";

//Comparo para ver si es horizontal o vertical
if ( $altooriginal $anchooriginal )
    {
    
$escala_1 $escala_2;
    }

echo
"Ya tengo la escala vertical-horizontal<br>";

// escalar la imagen
$horizontal=ceil$anchooriginal $escala_1 );
$vertical=ceil$altooriginal $escala_1 );

echo
"El escalado es: $horizontal, $vertical<br>";

//crear la nueva imagen
$final=imagecreatetruecolor $horizontal$vertical );

echo
"La nueva imagen esta creada<br>";

//copiar la imagen en la nueva imagen pequeña
imagecopyresized $final$imagen_src0000$horizontal$verticalimagesx($imagen_src), imagesy($imagen_src) );

echo
"Copiada y resampleada<br>";


$destinofinal=$_SERVER['DOCUMENT_ROOT']."/test/arriba/";
echo 
"Copiando fichero destino en destino: $destinofinal<br>";


//creo el nuevo nombre para la imagen pequeña
$cadenapeque="p.jpg";
$extraigo=substr($final,0,-4);
$lapeque=$extraigo.$cadenapeque;
echo 
"La fotopequeña es: $lapeque<br>";

//creamos
imagejpeg($final,$lapeque);

//PASO LA IMAGEN CREADA PEQUEÑA Y LA GRABO EN LA CARPETA DESTINOFINAL
copy($lapeque$destinofinal);
echo 
"Fichero imagen destino copiado en carpeta final<br>";


echo
"cerrando...<br>";

imagedestroy ($final);

echo
"Memoria liberada. [FIN]<br>";
    
?>

Etiquetas: imagenes, servidor, variables
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 21:48.