Cita:
Iniciado por el cirujano
coloca tu codigo de miperfil.php para que le echemos una chekeada... pero en la linea asi a primera vista pareciera que son las rutas /misitiolalalala/... creo que la ruta seria /var/www/html/tucarpeta/ o /www/tucarpeta/...
pero de todos modos colocar tu script para revisarlo
Eso lo cambié yo xDD para que no se viera aqui.
Código PHP:
if(!empty($_FILES['foto4']['name'])){
/////////////////////////////
// SINO EXISTEN LAS CARPETAS, SE CREAN.
if(!file_exists("thumbs/")){
mkdir("thumbs");
}
if(!file_exists("img/")){
mkdir("img");
}
//////////////////////////////////////////
// VAMOS A CREAR LA MINIATURA
// Y LA FOTO GRANDE ///////////////
//////////////////////////////////////////
// Creamos un array con el distinto tipos de imagenes que aceptamos.
$tiposimag=array("image/jpeg", "image/pjpeg", "image/gif" , "image/png");
// Guardamos información de la imagen en variables
$nombre=$_FILES['foto4']['name'];
$tipo=$_FILES['foto4']['type'];
$tamanyo=$_FILES['foto4']['size'];
$tmp_nombre=$_FILES['foto4']['tmp_name'];
$error=$_FILES['foto4']['error'];
// Obtenemos el tamaño horizontal y vertical del archivo en un array.
$archivoTemp = getimagesize($_FILES['foto4']['tmp_name']);
if(!in_array($tipo, $tiposimag)){
$msg="No se permite este tipo de imagenes.";
}
switch($tipo){
case $tiposimag[0];
$imagen = imagecreatefromjpeg($tmp_nombre); // crea una copia en memoria de la imagen subida
break;
case $tiposimag[1];
$imagen = imagecreatefromjpeg($tmp_nombre);
break;
case $tiposimag[2];
$imagen = imagecreatefromgif($tmp_nombre);
break;
case $tiposimag[3];
$imagen = imagecreatefrompng($tmp_nombre);
break;
default:
break;
}
$thumb_max = 135;
// de la imagen grande
$FotoG_max = 400;
// Comprobamos si es horizontal
if($archivoTemp[0] > $archivoTemp[1]) { // El índice 0 contiene el ancho de la imagen en píxeles. El índice 1 contiene la altura
// Definimos las medidas de las imagenes del thumbnail.
$thumb_w = $thumb_max; // ancho máximo.
$thumb_h = round(($archivoTemp[1]/$archivoTemp[0])*$thumb_max); // altura proporcional.
$FotoG_w = $FotoG_max;
$FotoG_h = round(($archivoTemp[1]/$archivoTemp[0])*$FotoG_max);
} else {
// sino es horizontal...
$thumb_h = $thumb_max; // altura maxima
$thumb_w = round(($archivoTemp[0]/$archivoTemp[1])*$thumb_max); // anchura proporcional.
$FotoG_h = $FotoG_max;
$FotoG_w = round(($archivoTemp[0]/$archivoTemp[1])*$FotoG_max);
}
// Creamos las imágenes.
$thumb = imagecreatetruecolor($thumb_w,$thumb_h); // creamos las imagenes con los tamaños que les dijimos arriba, no tienen colores, solo negro.
$FotoG = imagecreatetruecolor($FotoG_w,$FotoG_h);
// Copiamos la original escalada.
imagecopyresized($thumb,$imagen,0,0,0,0,$thumb_w,$thumb_h,imagesx($imagen),imagesy($imagen)); // los parametros de esta función son: imagen destino, imagen original, ejes de cordenadas, X e Y, con imagesx y imagesy guardamos las cordenadas en las que queremos la imagen.
imagecopyresized($FotoG,$imagen,0,0,0,0,$FotoG_w,$FotoG_h,imagesx($imagen),imagesy($imagen));
// imagecopyresampled guarda los colores originales de la imagen, imagecopyresized no.
$carpetaThumbs="thumbs/";
$carpetaFotoG="img/";
switch($tipo){ // segun el tipo que sea
case $tiposimag[0];
imagejpeg($thumb,$carpetaThumbs.$nombre); // la guardamos en un directorio con su nombre original.
imagejpeg($FotoG,$carpetaFotoG.$nombre);
break;
case $tiposimag[1];
imagejpeg($thumb,$carpetaThumbs.$nombre);
imagejpeg($FotoG,$carpetaFotoG.$nombre);
break;
case $tiposimag[2];
imagegif($thumb,$carpetaThumbs.$nombre);
imagegif($FotoG,$carpetaFotoG.$nombre);
break;
case $tiposimag[3];
imagepng($thumb,$carpetaThumbs.$nombre);
imagepng($FotoG,$carpetaFotoG.$nombre);
break;
default:
break;
}
// Destruimos ambas imágenes
imagedestroy($thumb);
imagedestroy($FotoG);
@unlink($_FILES['foto4']['tmp_name']); // eliminamos el directorio.
$foto4=$nombre;
///////////////////////////////
}
Aqui os dejo el codigo.