Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/05/2013, 10:20
lmcm2008
 
Fecha de Ingreso: abril-2011
Mensajes: 99
Antigüedad: 13 años, 10 meses
Puntos: 2
Pregunta move_uploaded_file no funciona...

Hola, tengo este código...

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/".$_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 );

$tipoimg=gettype($final);
echo 
"tipo=$tipoimg<br>";

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>";

//creo el nuevo nombre para la imagen pequeña

$cadenapeque="p.jpg";
$extraigo=substr($_FILES["file"]["name"],0,-4);
$lapeque=$extraigo.$cadenapeque;

echo 
"La fotopequeña es: $lapeque<br>";


//PASO LA IMAGEN CREADA PEQUEÑA Y LA GRABO EN LA CARPETA DESTINOFINAL

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

//prueba2
echo "la dos<br>";
imagejpeg($final$lapeque);
echo 
"dos creada<br>";

move_uploaded_file($lapeque"$destinofinal/$lapeque");

echo 
"Fichero imagen destino copiado en carpeta final $destinofinal<br>";





echo
"cerrando...<br>";

imagedestroy ($final);

echo
"Memoria liberada. [FIN]<br>";
    
?>
Todo funciona bien y parece que hace lo que "de momento" tiene que hacer...

EXCEPTO: el último

Código PHP:
move_uploaded_file($lapeque"$destinofinal/$lapeque"); 
No copia la imagen en el directorio que debe, que se lo especifico antes en la variable que le paso con "$destinofinal"...

Alguien sabe por que???

Agradeceria ayuda.

Muchas gracias.