En este supuesto… un formulario envía una imagen.
- El formulario tiene un campo de envío de archivo con nombre “imagen”
- El formulario tiene en su etiqueta method=”post” enctype=”multipart/form-data”
- El formulario envía a una página o recarga la misma pero al final tiene &send=ok en su action.

if($_GET['send']=='ok') // está enviando el formulario
{
 //carpeta donde se subirán las fotos
 // RECORDAR DE PONERLE PERMISOS 777 A ESTA CARPETA EN VISTA REMOTA
 
 $carpeta="img";
 
 // Esto es un filtro que le hacemos para que no suban cualquier archivo
 // VERIFICA QUE LA IMAGEN SEA jpeg, jpg, pjpg, gif, png o x-png
 
 if(is_uploaded_file($_FILES['imagen']['tmp_name']))
 {
 // time() lo que hace es mostrar los segundos desde 1970 que han transcurrido, asi
 // se pueden nombrar las fotos sin que sean de igual nombre.
 // lo de 'imagen' es como se llama en el formulario, lo que nos enviará la imagen.
 
  if($_FILES['imagen']['type'] == "image/jpeg")
  {
   $laFoto = time().'.jpg';
  }
  elseif ($_FILES['imagen']['type'] == "image/jpg")
  {
   $laFoto = time().'.jpg';
  }
  elseif ($_FILES['imagen']['type'] == "image/pjpeg")
  {
   $laFoto = time().'.jpg';
  }
  elseif ($_FILES['imagen']['type'] == "image/gif")
  {
   $laFoto = time().'.gif';
  }
  elseif ($_FILES['imagen']['type'] == "image/png")
  {
   $laFoto = time().'.png';
  }
  elseif ($_FILES['imagen']['type'] == "image/x-png")
  {
   $laFoto = time().'.png';
  }
  else
  {
   $laFoto ="";  // sino es ninguno de esos tipo de archivos que ponga $lafoto vacio.
   echo "Formato no permitido para nuestra web";
  } 
 }
 
 if($laFoto != '')
 {
 
  //la imagen "siempre" se sube, lo que lo pone en una carpeta temporal
      //lo que hacemos ahora es mover el archivo subido a nuestra carpeta.
     if(move_uploaded_file($_FILES['imagen']['tmp_name'],$carpeta."/".$laFoto))
   {
   // insert del mysql
   }
   else
   {
   echo "no pudo mover la foto a esa carpeta!";
   }
 
 }
}
If you enjoyed this post, make sure you subscribe to my RSS feed!