Sigo peleandome con esto de subir imagenes he adaptado un script de ramcy a mi codigo,pero en modo local me funciona a la perfección y cuando lo subo al server no sube el archivo aunque me aparece el mensaje como subido con exito,la carpeta tiene los permisos en 777,no se que probar mas,alguna idea?
Código PHP:
<?php
if(isset($_POST['submit'])){
$tamano = $_FILES [ 'file' ][ 'size' ]; // Leemos el tamaño del fichero
$tamaño_max="2000000"; // Tamaño maximo permitido
if( $tamano < $tamaño_max){ // Comprovamos el tamaño // Carpeta donde se guardata
$sep=explode('image/',$_FILES["file"]["type"]); // Separamos image/
$tipo=$sep[1]; // Optenemos el tipo de imagen que es
if($tipo == "gif" || $tipo == "pjpeg"){ // Si el tipo de imagen a subir es el mismo de los permitidos, segimos. Puedes agregar mas tipos de imagen
//if($tipo == "pjpeg"){
//$tipo='jpeg';
//}
//COGEMOS EL ARCHIVO TEMPORAL
$info = getimagesize($_FILES['file']['tmp_name']);
switch ($info[2]) {
case 1:
$imagen = imagecreatefromgif($_FILES['file'] ['tmp_name']); break;
case 2:
$imagen = imagecreatefromjpeg($_FILES['file'] ['tmp_name']); break;
case 3:
$imagen = imagecreatefrompng($_FILES['file'] ['tmp_name']); break;
}
$original = $imagen;
//MEDIDOS LA ANCHURA
$original_w = imagesx($original);
$original_h = imagesy($original);
$max = 121;
//SI ES MAS ANCHO QUE ALTO ,AL ANCHO MAXIMO 121 SI ES MAS ALTO QUE ANCHO ESTABLEZCO YO LA MEDIDA
if($original_w>$original_h) {
$muestra_w = $max;
$muestra_h = intval(($original_h/$original_w)*$max);
} else {
$muestra_w = 121;
$muestra_h = 127;
}
$muestra = imagecreatetruecolor($muestra_w,$muestra_h);
imagecopyresampled($muestra,$original,0,0,0,0, $muestra_w,$muestra_h,$original_w,$original_h);
imagedestroy($original); // aqui destruyo el original, pues no hace falta ya
$ruta_destino = "users/fotos/";
$fechas=time();
//trim lo que hace es eliminar espacios en blanco
$namefinal= trim ($_FILES['file']['name']);
$namefinal=$fechas.$namefinal;
$namefinal= ereg_replace (" ", "", $namefinal);
$uploadfile= $ruta_destino . $namefinal;
if(imagejpeg($muestra,$uploadfile,'100')) { // se coloca en su lugar final
$subida="Imágen subida con éxito con un peso de ".$_FILES['file']['size']." bytes!";
}
//move_uploaded_file ( $_FILES [ 'file' ][ 'tmp_name' ], $uploadfile); // Subimos el archivo
}
else echo "El tipo de archivos tiene que ser .jpg, .gif .";// Si no es el tipo permitido lo desimos
}
else echo "El archivo supera el peso permitido.";// Si supera el tamaño de permitido lo desimos
}
?>
Se me olvidaba el tipo de codificacion del form es multiform data
Gracias